加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Unity学习(五)行为树BehaviorDesigner

(2015-06-10 17:14:26)
标签:

行为树

behaviordesigner

分类: Unity
unity3d中有一款非常优秀的行为树插件Behavior Designer,因为时间有限就只测试了七种复合节点的逻辑判断,而条件节点和行为节点是根据项目逻辑定制,所以在学习时只加入简单的判断条件和行为。

1.首先定义三个全局变量

2.制作两个简单的条件节点
  1. public class A_B IntComparison  
  2.  
  3.     public BehaviorTree behaviorTree;  
  4.     public override TaskStatus OnUpdate()  
  5.      
  6.         if (integer1.Value integer2.Value)  
  7.          
  8.             return TaskStatus.Success;  
  9.          
  10.         return TaskStatus.Failure;  
  11.      
  12. }

3.条件节点参数与全局参数绑定

4.开始测试七种复合节点
1.选择节点

2.序列节点

3.并发选择节点

4.并发序列节点

5.随机选择节点

6.优先选择节点

7.随机序列节点

5.外部参数传递
如果要修改行为树的全局变量,可以通过如下方式
  1. public class BDMain MonoBehaviour  
  2.  
  3.     public BehaviorTree m_tree;  
  4.     public int m_a;  
  5.     public int m_b;  
  6.     public int m_c;  
  7.   
  8.     void Update ()   
  9.      
  10.         m_tree.GetVariable("a").SetValue(m_a);  
  11.         m_tree.GetVariable("b").SetValue(m_b);  
  12.         m_tree.GetVariable("c").SetValue(m_c);  
  13.      
  14. }  

方便记忆来张全图http://www/uc/myshow/blog/misc/gif/E___6721EN00SIGG.gif
上面某些节点的说明可能不太对,因为时间有限,也没能在项目中进行使用,暂时只做一个初步的了解,以后要用到时就可以很快上手。

插件地址:http://www.opsive.com/assets/BehaviorDesigner/

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有