Unity 从零开始 的行为树之旅(一)

行为树 Behavior Tree 基础

我的博客:Fasty的小站

 

以最简单的方式,带大家认识和使用行为树,此系列长期更新,望大家喜欢!

你的支持便是我写作的动力。


目录:

1.什么是行为树?

2.什么情况下要使用行为树?

3.行为树有什么优点?

4.行为树由哪几部分组成?

5.行为树的工作流程?


1.什么是行为树?

自顶向下的树形结构

行为树Behavior Tree 是一种数据结构,自顶向下的树形结构。

2.什么情况下要使用行为树?

情况多变,条件复杂

在处理逻辑复杂的问题时,这个复杂可能是条件复杂,情况多样。

行为树并非是游戏Ai的专属,在处理其他复杂业务逻辑或可能时都可以尝试用行为树来解决。

3.行为树有什么优点?

高效可读,易于扩展

行为树解决的问题是将复杂的关系,简单化,能很大程度的加强程序的可读性,健壮性。

4.行为树由哪几部分组成?

主要由四部分  CDAC 组成 ,两根两叶

  • Composites  组合节点    只能作为根节点,控制子节点的执行(顺序)
  • Decorator 装饰节点         只能作为根节点,修饰子节点
  • Actions     行为节点         只能作为叶子节点,执行具体动作
  • Conditinals 条件节点       只能作为叶子节点,判断条件

5.行为树的工作流程?

自顶向下,从左至右(并发进行),逐层进行

行为树执行的成果(成功/失败),由其子节点决定,子节点执行完成后会向父节点传递成功/失败的消息,

最终这些来自各个子枝的消息汇聚到行为树,行为树将结果整合得到行为树的最终执行结果。

其最终结果:同真为真,一假则假

 

相关阅读:

Unity 从零开始 的行为树之旅(二)

 

你可能感兴趣的:(Unity,算法学习,设计模式)