Unity 游戏中有限状态机(FSM)的实现与应用
1. 游戏 AI 与学术 AI 的区别
游戏 AI 和学术 AI 有着不同的目标。学术 AI 研究人员致力于解决现实世界的问题,开发能与人类智能竞争的 AI 算法,最终目标是在复杂情况下取代人类。而游戏 AI 则专注于利用有限资源构建能让玩家感觉智能的非玩家角色(NPC),其最终目标是为玩家带来娱乐体验,为玩家提供具有挑战性的对手,使游戏更有趣。
游戏中常用的 AI 技术包括有限状态机(FSM)、随机性与概率、传感器、输入系统、群体行为、路径跟随与转向行为、AI 寻路、导航网格生成以及行为树等。接下来我们将重点探讨如何在 Unity 引擎中实现有限状态机。
2. 技术要求
要进行后续的开发,你只需要安装 Unity3D 2022。可以在以下链接找到相关示例项目:https://github.com/PacktPublishing/Unity-Artificial-Intelligence-Programming-Fifth-Edition/tree/main/Chapter02 。
3. 实现玩家坦克
在编写玩家坦克的脚本之前,需要先设置 PlayerTank 游戏对象。坦克对象是一个带有刚体(Rigidbody)和盒子碰撞器(Box Collider)组件的简单网格。它由坦克主体和炮塔两个独立的网格组成,炮塔是坦克主体的子对象,这种结构允许通过鼠标移动独立旋转炮塔,同时炮塔会自动跟随坦克主体移动。此外,还需要创建一个空的游戏对象作为子弹发射点(SpawnPoint),并将 Player 标签分配给坦克对象。
以下是 PlayerTankCo
超级会员免费看
订阅专栏 解锁全文
5328

被折叠的 条评论
为什么被折叠?



