行为树,是一种特殊的流程控制(一种特殊的状态机)
根节点:Root
根节点,是行为树的起始点 根节点只能连接(3种基础节点中)的一个节点
基础节点(流程控制) Selector 选择节点(分支节点) Sequence 顺序执行节点(串行节点) Simple Parallel 同步执行节点(并行节点)
执行顺序 从上到下,从左到右(具体优先级以右上角序号为准)
基础节点
Selector:(选择节点) 子节点返回(执行成功)时暂停执行 子节点返回(执行未成功)时继续执行,直到执行成功(回到Root)
Sequence:(串行节点) 子节点返回(执行成功)时继续执行 子节点返回(执行失败)时终止执行(回到Root)
Simple Parallel:(并行节点) 可以同时执行一个Task任务和一个基础节点,在main-Task没有(返回失败)之前会一直执行另一个节点
装饰器:Decorator
类似判断条件,类似条件语句的判断条件,或者流程控制 https://docs.unrealengine.com/4.27/zh-CN/InteractiveExperiences/ArtificialIntelligence/BehaviorTrees/BehaviorTreeNodeReference/BehaviorTreeNodeReferenceDecorators/ 通知观察者:Notify Observer(一般保持默认即可) On Result Change:当结果变化(黑板结果改变) On Value Change:当值改变(黑板的值被修改,无论结果是否和之前一样)
观察者终止:Observer Aborts 装饰器是否影响之后的节点(及会不会受装饰器的控制) None:不影响 Self:只影响自己,及其子节点 LowerPriority:仅影响右侧的节点 Both:同时影响自己,及其右侧的节点