Behavior Designer

Unity资源插件之-行为树插件Behavior Designer

下面我们来看一款类似状态机设计的行为树插件Behavior Designer,如下图!

More

Unity教程之-利用Behavior Designer制作敌人AI

 

上篇文章《Unity教程之-游戏开发之怪物AI设计》我们学习了怪物智能AI的设计,那么本篇unity3d教程,我们来学习下利用Behavior Designer行为树插件来制作敌人AI,下面开始!

Behavior Designer插件里,主要有四种概念节点,都称之为Task。包括:

(1) Composites  组合节点,包括经典的:Sequence,Selector,Parallel

(2) Decorator 装饰节点,顾名思义,就是为仅有的一个子节点额外添加一些功能,比如让子task一直运行直到其返回某个运行状态值,或者将task的返回值取反等等

(3) Actions     行为节点,行为节点是真正做事的节点,其为叶节点。Behavior Designer插件中自带了不少Action节点,如果不够用,也可以编写自己的Action。一般来说都要编写自己的Action,除非用户是一个不懂脚本的美术或者策划,只想简单地控制一些物件的属性。

(4) Conditinals 条件节点 ,用于判断某条件是否成立。目前看来,是Behavior Designer为了贯彻职责单一的原则,将判断专门作为一个节点独立处理,比如判断某目标是否在视野内,其实在攻击的Action里面也可以写,但是这样Action就不单一了,不利于视野判断处理的复用。一般条件节点出现在Sequence控制节点中,其后紧跟条件成立后的Action节点。

下面介绍一个简单的敌人AI:

当处于监视范围内,跑向玩家;当处于攻击范围内,攻击玩家;否则呆在原地。用行为树表示就是:

Behavior Designer More