Unity3D Behavior Designer 行为树1 认识

环境:Unity2017.4 语言:C#

 

总起:

行为树,我很早就了解到了这个插件,不过对于它究竟是什么其实概念上比较模糊,这次正好趁机我们一起来学习一下(跟渲染一样AI也是个大坑)。

 

本次教程基于插件内部的pdf文档,加上自己的理解,如果有不对的地方恳请大佬们指出。

   

行为树应该是最为流行、成熟的一套AI解决方案了,虽然现在出现了更加强大的技术(决策树),不过这仍是主流的方案之一,各大小游戏都在使用它。

 

首先什么是行为树?

 

行为树是用来解决构建复杂AI的一套解决方案,相比于状态机(FSM)更加灵活、更加强大、更加易于使用:

1.行为树以节点为基本单位,可以任意组合节点来达成自己想要的效果;

2.FSM在状态数量多的情况下,会有大量的节点连接,造成相当的复杂性;

3.该插件拥有一个图形编辑器,树形结构更加利于理解。

 

Behavior Designer该插件拥有四个包体,分别为:Behavior Trees for Everyone(本体)、Formations Pack、Movement Pack、Tactical Pack。

 

除了本体以外,其他都是扩展包,扩展包包含很多与Unity底层或其他插件对接的具体节点。但是是这样子的,基本来说扩展包是没法满足你的需求的(每个项目所需要的细节是不一样的),扩展包提供的内容很多地方还是得重写,这只能说是一个非常好的学习资料,而不能说是万能的扩展包。

 

所以建议是只购买本体,扩展包可以看看学习,然后根据策划的具体需求,自己构建节点。

 

面板介绍:

 

插件导入之后,行为树的编辑面板可以通过菜单栏的Tools -> Behavior Designer -> Editor打开,打开之后如上图分为四个区域。

 

第1个面板是树形结构的主要编辑区域。首先选中一个节点,然后右键后选择Add Behavior Tree即可创建一个行为树。

 

第2个面板主要用于参数的调整,拥有四个页签:

  1. Behavior,整棵行为树基本属性;
  2. Tasks,可以给第1个面板中添加的所有节点;
  3. Variables,选中第1个面板中的节点后可以调整单独节点的参数;
  4. Inspector,同上,一些基本属性如名称、注释、打断方式。

 

第3个面板是操作的工具栏:

  1. 选择下一个或上一个行为树;
  2. 列出当前场景和工程中所有的行为树;
  3. 列出当前场景中所有的行为树;
  4. 当前选中GameObject上的所有行为树;
  5. 当行为树的外部行为树;
  6. 移除当前行为树;
  7. 增加一个行为树;
  8. 锁住当前面板,选择其他物体后不会自动变更行为树;
  9. 将当前行为树导出为一个外部行为树;
  10. 根据条件筛选节点;
  11. 给当前行为树进行截图(我直接卡死了……);
  12. 显示行为树插件的配置。

 

第4个面板是debug工具,可以开始/停止、单步调试、暂停,还可以看到当前行为树在运行前报错的数量。

 

关于操作:

  1. 添加节点,有两种方式:在Tasks页签中选择节点、右键选Add Task;
  2. 连接节点,按住节点两头的小方块直接拖拽即可;
  3. 删除节点和连接线,选中节点或连接,按下delete键即可。

 

今天就介绍这么,下一章会以一个简单的示例来介绍行为树的机制。

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值