zoukankan      html  css  js  c++  java
  • Behaviour Tree Service 中的几个函数

    Service中可以override的函数有8个,因为每个函数都有个AI版本的,所以实际上是4组函数,AI版本的和非AI版本基本一样,

    他们分别是:

    Receive Search Start (AI)

    Receive Activation (AI)

    Receive Tick (AI)

    Receive Deactivation (AI)

    我们以下图为例:

    这个分支是一个Sequence,会持续循环执行下方四个任务,直到条件不满足退出。

    当执行到该分支时,会触发Service的Search Start AI 和 Activation AI.

    当执行完一个循环(图中任务4执行完成,又回到任务1),进行第二次循环时,又会触发Activation AI,但不会触发Search Start AI,Search Start AI只有在离开这个分支,又重新进入这个分支时会再次触发。这是这两个事件的一个重要区别。

    执行过程中,按照Behaviour Tree中指定的该服务的执行频率(例如上图中是0.2秒一次, tick every 0.20s),每执行一次Service会触发一次Receive Tick

    Receive Deactivation则和Receive Activation 相对应,是没执行完一次循环后调用。

    综合看下来,实际上缺少一个和Receive Search Start (AI)想对应的函数,即离开整个分支时执行的函数。也许是Epic认为没有必要吧,我在实践中也确实没有遇到这个需求。

  • 相关阅读:
    Objective C 总结(十):Conventions
    Objective C 总结(九):Errors
    iOS 关于传值
    iOS UIImage剪切圆形
    iOS 触摸的位置放一个大头针
    iOS开发之各种动画各种页面切面效果
    AFNetworking2.4.1 解析
    iOS网络协议----HTTP/TCP/IP浅析
    ios 开发日记 9
    ios开发日记
  • 原文地址:https://www.cnblogs.com/AnKen/p/7567844.html
Copyright © 2011-2022 走看看