unity行为树Behavior Designer插件学习

本章资源百度网盘:

链接:https://pan.baidu.com/s/16BFLcqIK6aKPc_vxhuR0HA?pwd=d42s 
提取码:d42s 
 

1、准备

1、导入行为树插件包(Unity Behavior Designer v1.5.5)

2、tool->behavior designer->editor打开编辑器

2、编辑器基本介绍

1、选中物体,右键创建一个行为树

2、右键创建task

3、task.action.log:表示输出信息

4、task.composites.sequence:序列,其子task会从左到右执行,只有全部完成才会返回

unity行为树Behavior Designer插件学习_第1张图片

5、task.action.Idle:一直停滞直至其他条件打破

6、task.action.wait:等待特定时间后执行成功

7.物体脚本检查界面

勾选后任务执行完重新再次执行

8.task.composites.selector 选择,其子task会从左到右执行,只要完成一个就会返回完成

3.案例1

1.敌人巡逻

1.1导入行为树movment版升级包(Behavior Designer - Movement_Pack_v1.3.2)

添加movment的task的patrol

unity行为树Behavior Designer插件学习_第2张图片

1.2设置patrol面板

unity行为树Behavior Designer插件学习_第3张图片

WayPoint为指定的巡逻点,用空物体赋值

1.3记得在windows-AI-Navmeshment中bake地板并为敌人添加navmeshAgent组件

2.玩家设置从一端移动到另一端

对玩家使用task.seek

unity行为树Behavior Designer插件学习_第4张图片

设置seek面板

其中target Transform设置为目标地点的空物体

unity行为树Behavior Designer插件学习_第5张图片

3.设置敌人巡逻时看到玩家会追踪玩家

3.1

设置行为树分布如下:

unity行为树Behavior Designer插件学习_第6张图片

3.2

添加变量,类型为transform

unity行为树Behavior Designer插件学习_第7张图片

3.3

设置can see object面板

unity行为树Behavior Designer插件学习_第8张图片

Target Object表示目标物体,将玩家赋值给它

object in sight表示将目标物体赋值给一个变量

将它赋值给刚刚添加的target变量

3.4

设置seek面板

unity行为树Behavior Designer插件学习_第9张图片

将刚刚得到赋值的target变量赋值给Target Position

3.5

设置Sequence面板

unity行为树Behavior Designer插件学习_第10张图片

将Abort Type设置为Lower Priority,

然后就能在满足条件时打断右边低优先级的seek直接执行Sequence下面的追击任务

关于Abort Type:

unity行为树Behavior Designer插件学习_第11张图片

判定满足时选择将低优先级或者自身打断

3.6 调整玩家和敌人在场景的位置,然后就可以实现敌人巡逻,如果发现玩家追踪玩家了

你可能感兴趣的:(unity专题,学习,unity,人工智能)