游戏智能

坦克对战游戏 AI 设计

从商店下载游戏:“Kawaii” Tank 或 其他坦克模型,构建 AI 对战坦克。具体要求:

  • 使用“感知-思考-行为”模型,建模 AI 坦克
  • 场景中要放置一些障碍阻挡对手视线
  • 坦克需要放置一个矩阵包围盒触发器,以保证 AI 坦克能使用射线探测对手方位
  • AI 坦克必须在有目标条件下使用导航,并能绕过障碍。(失去目标时策略自己思考)
  • 实现人机对战

下载并载入坦克大战资源

在Asset Store中下载坦克大战资源Tanks! Tutorial,然后载入

制作地图

利用资源中已有的Models制作地图,其中需要把building等对象的Navigation Area设置为not walkable,这样坦克将无法穿过。
游戏智能
游戏智能

编写并添加脚本

  • 通过单实例工厂GameObjectFactory来统一管理玩家player、 AI坦克、子弹、爆炸粒子系统等游戏对象,实现方法与老师前面课上讲的内容一致。通过Dictionary来维护。
  • MainCameraControl来控制主摄像机的移动跟随效果,并且能够通过游戏场景中所有坦克的距离大小来设置摄像机的Size,从而视觉体验更佳
  • 场记SceneController内容也比较简单,主要负责通知工厂初始化各种游戏对象,如player、AI坦克等,并初始化主摄像机,然后实现IUserAction接口中声明的函数即可。
    将脚本player添加在Tank上,其余添加在Camera上即可。
    完整代码可在Github上查看
    Github代码

游戏实现

游戏智能
游戏视频