UE4 行为树资料

匿名 (未验证) 提交于 2019-12-03 00:39:02

Composites

从左往右执行其子节点,直到一个达成,则 Select 达成并返回上层,否则失败并返回上层

从左往右执行其子节点,直到一个失败,则 Sequence 失败并返回上层,否则达成并返回上层

包含一个main task和一个sub tree, main task支持一个 Task 节点,用于执行一个主线行为,sub tree 支持一个行为树,伴随 main task 执行,返回结果是main task的执行结果

Task

Task 节点用于执行具体的动作,引擎内置的 Task 常用的有 Wait 、 Move To 、 Is At Location 等等,Task 一般是自行实现的AI具体的行为逻辑,其中的代码与普通蓝图代码一样

  • Event Receive Execute / Event Receive Execute AI
    定义该 Task 的主体逻辑代码,如果没有特殊需求,则必须以 Finish Execute 节点结束,因为只有 Finish Execute 节点才能想上层返回执行结果,否则该 Task 如果不被打断将不会执行完成

    如果同时存在 Event Receive Execute 和 Event Receive Execute AI 两个事件,优先执行 Event Receive Execute AI 事件

  • Event Receive Abort / Event Receive Abort AI
    当前任务被打断时触发该事件,用来处理突发情况对当前行为的影响,如果没有特殊需求,则必须以 Finish Abort 节点结束,以结束该任务节点的执行

    如果同时存在 Event Receive Abort 和 Event Receive Abort AI 两个事件,优先执行 Event Receive Abort AI 事件

Decorator 类型的节点用作条件判断(类似于程序中的基本流程控制),附着于 Composites 或 Task 节点上

  1. Notify Observer:规定条件重新评估的时机
    On Result Change:适用于范围性检测,当检测的值越界时进行重新评估该条件产生的结果
    On Value Change:适用于精确检测,当检测的值发生变化时进行重新评估该条件产生的结果
  2. Observer Aborts
  3. Key Query
  4. Blackboard Key:用于检查的黑板的键。对可返回None的数据类型(如物体)作用最佳,因为其他类型的数据可能返回其初始化值(0、false 、 {0,0,0}等)
  5. Node Name

通过 Composite Decorator 节点可设置比内置节点更高级的逻辑,但无法达到完整蓝图的复杂程度

  1. Composite Name:行为树图表中显示的节点名称
  2. Show Operations:使操作以纯文本方式列于节点上

循环指定的次数或无限循环

  1. Num Loops:循环的次数
  2. Infinite Loop:是否进行无限循环
  3. Node Name:行为树图表中显示的节点名称

带条件的循环,如果Blackboard上指定的键值满足条件则进行循环

  1. Node Name:行为树图表中显示的节点名称
  2. Key Value
  3. Blackboard Key:用于检查的黑板的键。对可返回None的数据类型(如物体)作用最佳,因为其他类型的数据可能返回其初始化值(0、false 、 {0,0,0}等)

Cone Check

检测指定的位置或Actor是否在椎体范围内,返回bool结果

  1. Cone Half Angle:椎体的半角。对于90度的椎体而言,这个值应该设置为45度
  2. Observer Aborts
  3. Cone Direction:锥形口的朝向
  4. Observer:被检查的位置或Actor,确定是否在锥形内
  5. Inverse Condition:结果是否翻转(true变为false,false变为true)
  6. Node Name

会锁定一个节点或分支的执行,直到冷却时间结束

  1. Cool Down time:Cooldown decorator 锁定此节点执行的冷却时间(以秒计算)
  2. Observer Aborts
  3. Node Name

Does Path Exist

确定路径是否可由以下两个矢量组成:Blackboard Key A 和 Blackboard Key B (判定SelfActor与TargetPawn是否存在一条可以到达的路径,返回bool结果)

  1. Blackboard Key A:路径中的第一个位置
  2. Blackboard Key B:路径中的第二个位置
  3. Path Query Type,路径计算类型:NavMesh Raycast 2D 非常快,Hierarchical Query 快,Regular Path Finding 慢
  4. Inverse Condition:结果是否翻转 (true变为false,false变为true)
  5. Observer Aborts
  6. Filter Class:确定使用的导航数据。如果设为None,则将 使用默认的导航数据
  7. Node Name

Force Success

强制使所附着的节点返回执行成功结果

  1. Node Name

原文:https://www.cnblogs.com/mattins/p/9269993.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!