BehaviorManager.instance.Tick(behaviorTree); 卸载update里u3d直接卡死 = =
SharedVariable直接赋值会改变他的引用关系,必须用XXX.Value赋值 = =

http://www.opsive.com/assets/BehaviorDesigner/documentation.php


两种自定义Task:  Task 和 Parent Tasks

基础task流程 ( Conditional Task  和   Action Task )


Parent Tasks
  1. // The maximum number of children a parent task can have. Will usually be 1 or int.MaxValue
  2. public virtual int MaxChildren();
  3. // Boolean value to determine if the current task is a parallel task
  4. public virtual bool CanRunParallelChildren();
  5. // The index of the currently active child
  6. public virtual int CurrentChildIndex();
  7. // Boolean value to determine if the current task can execute
  8. public virtual bool CanExecute();
  9. // Apply a decorator to the executed status
  10. public virtual TaskStatus Decorate(TaskStatus status);
  11. // Notifies the parent task that the child has been executed and has a status of childStatus
  12. public virtual void OnChildExecuted(TaskStatus childStatus);
  13. // Notifies the parent task that the child at index childIndex has been executed and has a status of childStatus
  14. public virtual void OnChildExecuted(int childIndex, TaskStatus childStatus);
  15. // Notifies the task that the child has started to run
  16. public virtual void OnChildStarted();
  17. // Notifies the parallel task that the child at index childIndex has started to run
  18. public virtual void OnChildStarted(int childIndex);
  19. // Some parent tasks need to be able to override the status, such as parallel tasks
  20. public virtual TaskStatus OverrideStatus(TaskStatus status);
  21. // The interrupt node will override the status if it has been interrupted.
  22. public virtual TaskStatus OverrideStatus();
  23. // Notifies the composite task that an conditional abort has been triggered and the child index should reset
  24. public virtual void OnConditionalAbort(int childIndex);

父节点基础类ParentTask派生出装饰节点Decorator
  1. // The maximum number of children a parent task can have. Will usually be 1 or int.MaxValue
  2. public virtual int MaxChildren();
  3. // Boolean value to determine if the current task is a parallel task
  4. public virtual bool CanRunParallelChildren();
  5. // The index of the currently active child
  6. public virtual int CurrentChildIndex();
  7. // Boolean value to determine if the current task can execute
  8. public virtual bool CanExecute();
  9. // Apply a decorator to the executed status
  10. public virtual TaskStatus Decorate(TaskStatus status);
  11. // Notifies the parent task that the child has been executed and has a status of childStatus
  12. public virtual void OnChildExecuted(TaskStatus childStatus);
  13. // Notifies the parent task that the child at index childIndex has been executed and has a status of childStatus
  14. public virtual void OnChildExecuted(int childIndex, TaskStatus childStatus);
  15. // Notifies the task that the child has started to run
  16. public virtual void OnChildStarted();
  17. // Notifies the parallel task that the child at index childIndex has started to run
  18. public virtual void OnChildStarted(int childIndex);
  19. // Some parent tasks need to be able to override the status, such as parallel tasks
  20. public virtual TaskStatus OverrideStatus(TaskStatus status);
  21. // The interrupt node will override the status if it has been interrupted.
  22. public virtual TaskStatus OverrideStatus();
  23. // Notifies the composite task that an conditional abort has been triggered and the child index should reset
  24. public virtual void OnConditionalAbort(int childIndex);



Behavior Designer扩展的更多相关文章

  1. 基于行为树的AI 与 Behavior Designer插件

    优点:    0.行为逻辑和状态数据分离,任何节点都可以反复利用.    1.高度模块化状态,去掉状态中的跳转逻辑,使得状态变成一个"行为".    2."行为" ...

  2. Behavior Designer中的内置消息机制

    最近在用Behavior Designer,其中需要用到消息机制,看了一下其中自带了这套东西 注册 Owner.RegisterEvent<string>("Message&qu ...

  3. 【转】利用Behavior Designer制作敌人AI

    http://www.unity.5helpyou.com/3112.html 本篇unity3d教程,我们来学习下利用Behavior Designer行为树插件来制作敌人AI,下面开始! Beha ...

  4. Unity火爆插件Behavior Designer行为树插件学习

    如果要让游戏里的角色或者NPC能执行预设的AI逻辑,最简单的用IF..ELSE...神器既可以实现, 但是再复杂的一般用经典的状态机来切换状态,但是写起来比较麻烦.相对的,行为树(Behavior T ...

  5. Behavior Designer中Wait节点的坑

    某一组行为放在并行节点下,并且包含Wait节点动作.当等待时间不达到时它会返回Runing 造成整个行为树阻塞 应该考虑写一个CD时间装饰器来解决此类问题,当CD时间未到返回Failure

  6. Behavior Designer 学习

    http://www.opsive.com/ 简单Demo Sequence Selector Chase Enemy enemy:player:

  7. 【转】手动写一个Behavior Designer任务节点

    http://blog.csdn.net/qq_33747722/article/details/53539532 自己手写一个类似于CanSeeObject.Seek等任务节点并不是一件难事 下面我 ...

  8. 【Unity笔记】Behaviour Designer的使用方法

    Tasks列表 -- Composites选项 Sequence:图标是“箭头”,相当于And逻辑.下接多个子任务,它们从左到右依次执行.所有子任务执行成功,则Sequence返回成功:任一子任务执行 ...

  9. ThinkPHP框架设计与扩展总结

    详见:http://www.ucai.cn/blogdetail/7028?mid=1&f=5 可在线运行查看效果哦 导言:ThinkPHP框架是国内知名度很高应用很广泛的php框架,我们从一 ...

随机推荐

  1. ios xmpp 发送语音图片解决方案

    ios xmpp 发送语音,图片解决方案,有需要的朋友可以参考下. 目前做IM多是用的xmpp. 因为项目需求需要实现语音和图片的发送. 发送语音图片有三种方法. 1,xmpp smack.文件传输方 ...

  2. [Git]Please make sure you have the correct access rights and the repository exists

    这个问题是这样,需要在已有github账号的A机器上,再创建一个github账号,新账号创建完毕,将代码通过机器A push上之后,再另一台机器B,clone 这个项目时报出了如下错误: Permis ...

  3. C++ 类的初始化列表

    class Animal{public: Animal(int weight,int height): //A初始化列表 m_weight(weight), m_height(height) { } ...

  4. 洛谷 3285 [JLOI2014]松鼠的新家

    [题解] 给出一条路径,问树上的点被经过了几次. 显然树剖之后树上差分就好了. #include<cstdio> #include<algorithm> #define N 3 ...

  5. 【NJU749D】triple(莫比乌斯反演)

    题意: cas<=100 n<=10^5 思路:与两个数的没什么区别 F(d)=(n div d)*(n div d-1)*(n div d-2) div 6 再加上喜闻乐见的下底函数分块 ...

  6. Yet another Number Sequence 矩阵快速幂

    Let’s define another number sequence, given by the following function: f(0) = a f(1) = b f(n) = f(n ...

  7. yum 源本地化 (one)

    First of all, you need to prepare the rpm packages, we can download them with yum command, in that w ...

  8. 从一个简单的例子谈谈package与import机制

    转,原文:http://annie09.iteye.com/blog/469997 http://blog.csdn.net/gdsy/article/details/398072 这两篇我也不知道到 ...

  9. Neutron中的网络I/O虚拟化

    为了提升网络I/O性能.虚拟化的网络I/O模型也在不断的演化: 1,全虚拟化网卡(emulation).如VMware中的E1000用来仿真intel 82545千兆网卡,它的功能更完备,如相比一些半 ...

  10. bootstrap-table方法之:expandRow-collapseRow,展开或关闭当前行数据

    官方演示地址:http://issues.wenzhixin.net.cn/bootstrap-table/methods/expandRow-collapseRow.html <!DOCTYP ...