从我的角度来说,一个AI应该是有三层状态机来决定
第一层状态机位于最底层,它提供了人物最基本的跑跳攻击等等动作
第二层位于中间,提供了人物的基本行动,例如靠近敌人或着这一类的
第三层位于上层,由AI的角色来决定这一层状态机要做什么
这三层状态机,上层能调用下层,但下层只能为上层提供接口;当第一层和第二层完备之后,只需要根据角色是什么样子的来决定要做什么样的事情就可以了。这个方法放在任何游戏中都是可行的。
以格斗游戏为例,若某个AI为强进攻行,那行第三层会大量调用第二层中逼近敌人,攻击敌人等一系列行为。
这么做的好处在于,不需要去为每个AI修改一堆东西,只需要将行为弄好,然后由策划去组织AI的角色就行,能大大地减少开发的工作量。
最后的一点是,AI作为一种算法,与是不是3D关系并不大的。要明白2D或着3D只是一种表现手法。
关于AI的状态机相关的东西的话,可以看看https://www.zhihu.com/question/21090429,我上面说的也是在这里学到的。
万有所帮助
格斗游戏里的立回ai是怎样的判定逻辑?
2 条评论