标签:返回 行为 Stops NPBehave 概念 停止 执行 true 节点
行为树NPBehave
Composite
- Sequence and运算 依次执行序列,第一个返回false 停止执行返回false 全部为true 返回true
- Selector or运算 依次执行序列,第一个返回true 停止执行返回true 全部为true 返回true
- Parallel 同时开始执行序列,根据策略决定结果
. 失败判定为 Policy.ONE 有一个子节点返回执行失败时停止其它子节点 结果返回失败
. 成功判定为 Policy.ONE 有一个子节点返回执行成功时停止其它子节点 结果返回成功
. 成功判定为 Policy.ALL 所有子节点返回执行成功 结果返回成功
. 上面三种情况以外 返回失败 - RandomSelector or运算 乱序执行序列,第一个返回true 停止执行返回true 全部为true 返回true
- RandomSequence and运算 乱序执行序列,第一个返回false 停止执行返回false 全部为true 返回true
Decorator
- Failer 忽略子节点返回结果, 返回失败
- Succeeder 忽略子节点返回结果, 返回成功
- Inverter 返回与子节点结果相反的结果
- Random 0-1之间随机一个数, 返回是否小于初始化设置的值
- Repeater 循环执行子节点设定n次,n<=0 为无限次
- Cooldown 等待一段时间执行子节点
- Observer 给节点套一层,可以用来插入一些操作
- TimeMax 最多等待多久返回结果,如果超时根据创建时指定策略返回结果,否则反击子节点结果
- TimeMin 最少等待多久返回,如果执行时间小于最小时间,根据策略返回结果
- WaitForCondition 等待某个条件(一个action
检查)成立时,执行子节点 - Service tick一个函数并且启动子节点
- ObservingDecorator BlackboardQuery BlackboardCondition 条件检查控制
终止原则
- Stops.NONE:装饰器只会在启动时检查一次它的状态,并且永远不会停止任何正在运行的节点。
- Stops.SELF:装饰器将在启动时检查一次它的条件状态,如果满足,它将继续观察黑板的变化。一旦不再满足该条件,它将终止自身,并让父组合继续处理它的下一个节点。
- Stops.LOWER_PRIORITY:装饰器将在启动时检查它的状态,如果不满足,它将观察黑板的变化。一旦条件满足,它将停止比此结点优先级较低的节点,允许父组合继续处理下一个节点
- Stops.BOTH:装饰器将同时停止:self和优先级较低的节点。
- Stops.LOWER_PRIORITY_IMMEDIATE_RESTART:一旦启动,装饰器将检查它的状态,如果不满足,它将观察黑板的变化。一旦条件满足,它将停止优先级较低的节点,并命令父组合立即重启此装饰器。
- Stops.IMMEDIATE_RESTART:一旦启动,装饰器将检查它的状态,如果不满足,它将观察黑板的变化。一旦条件满足,它将停止优先级较低的节点,并命令父组合立即重启装饰器。正如在这两种情况下,一旦不再满足条件,它也将停止自己。
标签:返回,行为,Stops,NPBehave,概念,停止,执行,true,节点 来源: https://www.cnblogs.com/bsdy/p/16607306.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。