最近在写读书笔记,刚好涉及游戏AI这一块,就在这里总结一下,有什么问题请随时指出。
首先基本概念,人工智能AI(Artificial Intelligence)是指由人创造的一些模拟人的行为的系统,这适用于游戏中角色对人物的模拟。我们可以认为,AI系统的强大也决定了一个游戏是否惊险/有趣。反正总结就是一句话吧,太简单的AI会让人觉得索然无味,太难的AI会让人wocao,然后弃坑,所以尽量设计好AI吧。
基本的AI模型,可以分为层次处理运动层/决策层/战略层。
游戏中的AI也可以分为四块:1.操控游戏中角色的自主移动,包括群组行为操控;2.构建寻路系统,使游戏中角色之间可以找到目标并向目标移动,较为有名就是A*寻路算法,当然也可以直接使用unity自带的NavMeshAgent组件实现寻路;3.游戏中角色对游戏世界的感知,最简单的就是角色本身的生命状态/武力值等,复杂点还包括感知哪里有敌人,哪里有队友,哪里发生大的事件(如爆炸);4.游戏角色的自主决策,就像人的本能,感觉痛就缩手,游戏角色也应当对一些事件有自己的决策,实现方式就是有限状态机与行为树的构建。
游戏中的AI角色是处于一个感知/思考/执行的循环中的,即感知游戏世界中的各类信息,拾取需要的信息进行思考还如何应对,再根据设定的机制执行。第二段文字中介绍了AI的一个通用模型,这里做具体讲解,图示如下。