Unity3D人工智能架构模型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Unity3D是近几年非常流行的一个3D游戏开发引擎,已经成为手

机游戏主要的开发工具之一。该引擎也可以用于计算机虚拟现实领域

的开发工作,比如模拟飞行、模拟射击、模拟驾驶等。手机(或其他

平台)中的游戏逐渐高档化、复杂化,游戏角色需要具有更高的“智

能”,特别是在大型三维网络游戏中,AI(人工智能)的开发占有重

要的比例。游戏中角色的AI水平直接决定着游戏的惊险性、刺激性、

趣味性,优秀的游戏会使人玩不释手。

本书的核心是采用Unity3D游戏引擎,使用C#脚本编程来实现这类

智能任务。

人工智能(Artificial Intelligence,简称AI),是指由人工制造出来

的系统所表现出来的模拟人类的智能活动,通常也指通过计算机实现

的这类智能。在游戏中,对于AI,应该关注的问题是如何让游戏角色

能像人或动物那样“感知”、“思考”和”行动”,让游戏中的角色看

上去像具有真实的人或动物的反应。

本书用“AI角色”来表示游戏中由计算机控制,具有一定智能的

非玩家角色。

事实上,对于游戏中的AI角色,可以认为它们一直处于感知

(Sense)→思考(Think)→行动(Act)的循环中。

感知:是AI角色与游戏世界的接口,负责在游戏运行过程中不

●●断感知周围环境,读取游戏状态和数据,为思考和决策收集信

息。例如,是否有敌人接近等。

思考:利用感知的结果选择行为,在多种可能性之间切换。例

●●如,战斗还是逃跑?躲到哪里?一般说来,这是决策系统的任

务,有时也可能简单地与感知合二为一。

第1章

Unity3D人工智能架构模型

2Unity3D人工智能编程精粹

行动:发出命令、更新状态、寻路、播放声音动画,也包括生命值减少等。这是运动●●系统、动画系统和物理系统的任务,而动画和物理系统由游戏引擎提供支持。

多年以来,从街机游戏《PaC Man(吃豆人)》中的小魔鬼到《使命召唤:现代战争3》、《光晕》等,AI给无数的游戏角色赋予了鲜活的生命力。

1. 决策系统中的“有限状态机”技术

《PaC Man》(见图1.1)游戏中的AI或许

是很多玩家曾经见过的最早的AI角色,该游

戏中的敌人角色能和玩家作对,在关卡中像

玩家一样移动,给玩家留下了深刻的印象。

《PaC Man》采用了非常简单的“有限状

态机”技术。在游戏中,每个小魔鬼都处于

追逐PaC Man或当PaC Man长大后被小魔鬼追

逐而逃跑的状态中。对于每个状态,小魔鬼

在交叉点处都会采用半随机的方式选择移动

路线。在追逐模式下,每个小魔鬼都有不同

的概率追逐PaC Man;在逃跑模式下,它们或

者选择以最快速度跑开,或者选择一个随机的方向移动。

《PaC Man》之后很久一段时间,AI游戏的开发几乎是在原地踏步,直到1990年代中期,AI又开始成为游戏的热点,一些游戏的宣传中甚至特别提到了AI来做为卖点。

有限状态机技术是最早产生的AI技术,时至今日依然有着强大的生命力,是AI中应用最为广泛的技术之一。同时,行为树技术也得到了越来越广泛的应用。

2. 潜行类游戏中的感知技术

在现代游戏中,感知与触发技术的使用十分普遍,它们会为玩家带来更加逼真的游戏体

验。尤其是在潜行类游戏中,感知系统是最

为重要的部分之一。

1997年的《G o l d e n e y e 007(黄金眼

007)》游戏中,尽管采用了只包含少量状态

的角色,但是加入了一个AI感知系统,使游

戏中的角色能够看到他们的同伴,如果同伴

被杀死,他就会感知并调整自身行为。1998

年的《Thief:The Dark Project》和《Metal

Gear Solid(合金装备)》(见图1.2)游戏

中,引入了更加强大的AI感知,大大提升了

游戏体验。

图1.1

《PaC Man》游戏截图图1.2 《Metal Gear Solid》游戏截图

3

第1章 Unity3D人工智能架构模型3. 运动系统中的自主移动与编队移动技术——“操控行为”与“A*寻路”技术

1994年,一款经典的即时战略游戏《星

际争霸》(见图1.3)横空出世,在很短的

时间里盖过了C&C系列的风头,成为RTS

(Real-Time Strategy Game,即时战略游戏)

游戏的新潮流,并且这股潮流一卷就是十

几年。在玩家非常熟悉的《星际争霸》游戏

中,广泛使用了寻路技术与战场上士兵的编

队移动,而《星际争霸2》中采用了第2章将

介绍的群体操控行为。

时至今日,群体操控行为依然是游戏中

最广泛采用的群体模拟技术,而A*寻路则是

应用最为广泛的寻路算法。1.1 游戏AI的架构模型

尽管每种游戏需要的AI技术都有所不同,但绝大多数现代游戏中对AI的需求都可以用三种基本能力来概括。

运动:移动角色的能力;

●●决策:做出决策的能力;

●●战略:战略战术思考的能力。

●●根据上面的需求,我们采用的AI架构模型如图1.4所示。在这个模型中,将AI任务划分为三个层级,分别为运动层、决策层和战略层。运动与决策层包含的算法是针对单个角色的,战略层是针对小队乃至更大规模群体的。在这三个层次

的周围,是与AI密切相关的其他部分:与游戏世界的接

口、动画系统、物理仿真系统等。

需要注意的是,这只是一种基本的AI架构模型。

实际中,根据游戏的种类和需求,可能会有所细化或增

删。例如,棋类游戏就只包含战略层,因为这种游戏中

的角色不需要自己做出决定,也不用考虑如何移动。而

其他许多非棋类游戏中,就不包含战略层,如平台游戏

中的角色,可能是纯反应型的,只需要每个角色自己做

出简单的决定,并且依此行动,而不需要角色之间的分

工协作。在另一些类型的游戏中,可能还需要对这三层

中的某层进行进一步细分,以满足更多的需求等。图1.3

《星际争霸》游戏截图

图1.4 通用的AI架构模型

相关文档
最新文档