![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
AI插件Behavior Tree行为树
AI插件Behavior Tree行为树
Cuijiahao
cocos2d-x/u3d程序员
展开
-
角色的行为树获取角色的组件
给角色绑定行为树相当于给角色绑定一个组件,所以可以直接用GetComponent去访问角色的其它组件Seek行为树代码using BehaviorDesigner.Runtime.Tasks;using UnityEngine;using UnityEngine.AI;public class SoldierSeekFinalTarget : Action{ public...原创 2019-12-31 09:52:44 · 245 阅读 · 0 评论 -
手写Seek任务和CanSeeObject
任务的生命周期在类里右键选择快速操作和重构点击生成重写选择需要重写的函数Seek任务using BehaviorDesigner.Runtime;using BehaviorDesigner.Runtime.Tasks;using UnityEngine;//动作任务public class NNSeek : Action{ //Sha...原创 2019-12-30 14:38:53 · 411 阅读 · 1 评论 -
设置多个目标
设置目标层将目标都设到一个层上原创 2019-12-30 10:26:19 · 135 阅读 · 0 评论 -
绑定属性Variables - 当物体检测到目标进入区域后,让物体追着目标移动
选择行为树,添加变量,设置name和type添加后的变量设置追踪的Seek任务追踪的速度小于目标的速度时,会一直追踪。绑定Can See Object的数据选择刚才创建的Target变量绑定Seek的数据选择刚才创建的Target变量...原创 2019-12-30 08:50:23 · 138 阅读 · 0 评论 -
AbortType打断任务 Sequence - 【Abort Type】属性
Lower Priority设置Sequence的中断类型None:没有打断Lower Priority:中断同级的任务,即中断Seek任务作用:只要行为树还在执行的时候,其子级(Can See Object)就会一直在执行。也就是说Can See Object随时在检测,只要它检测到了目标,那么它就会返回一个True,这时Sequence也会跟着返回true,而Selecto...原创 2019-12-29 17:51:30 · 1380 阅读 · 0 评论 -
Can See Object(寻找对象)任务 Conditionals- Movement -【Can See Object】
这是一个判断任务,只会返回值会显示一个扇形区域,运行时该区域不显示,并且只会执行一次判断,不会时刻都监视作用:如果目标在这个扇形范围之内,Returned Object就会返回目标的名字设置属性Target Object:目标对象Field of View Angle:视野角度View Distance:视野距离Returned Object:追踪...原创 2019-12-29 16:27:37 · 450 阅读 · 0 评论 -
Seek(控制行走)任务 Actions - Movement -【Seek】
创建一个Player的GameObject对象,并创建一个行为树Seek任务作用:设置一个目标点给它,到达目标点后会停止给Player添加导航组件创建一个目标点targetPoint将刚才创建的目标点拖到Seek任务的Target属性里执行效果:Player会移动到targetPoint点属性介绍Speed:速度Angular S...原创 2019-12-29 15:38:18 · 155 阅读 · 0 评论 -
Patrol(巡逻)任务 Actions - Movement -【Patrol】
必须安装【Behavior Designer - Movement】资源包新建一个场景,并添加plane和cube给cube添加行为树Patrol(巡逻)任务通过导航的网格,绕着几个特定的点导航Waypoints添加三个点场景里创建三个GameObject并设置好它们的位置设置一下图标的样式将创建的三个点拖进来给Cube添加导航...原创 2019-12-29 14:41:15 · 386 阅读 · 0 评论 -
Behavior Designer - Movement Pack 导航资源包
行为树里有很多任务,导入这个包用来实现A星寻路或者其它导航。线上安装:搜索Behavior Designer Movement导入Behavior Designer - Movement导入后Actions任务里会多一个Movement...原创 2019-12-29 14:35:41 · 1739 阅读 · 0 评论 -
浮点条件判断 Conditionals - Basic - Math - 【Float Comparison】
添加一个浮点判断效果设置判断条件因为条件不相等所以返回false还可以这样做,添加一个Sequence容器,下面两个子任务,一个条件判断,一个LOG,如果条件判断为false,则Sequence容器返回flase,则执行右面的那个LOG...原创 2019-12-28 17:06:12 · 137 阅读 · 0 评论 -
容器任务-Selector-或操作 Composites - 【Selector】
a||b只要一个为true,这个任务就为true必须要有子任务Selector容器的目标就是只要下面的子任务有一个为true,Selector状态为true就不执行了,顺序是从左往右。...原创 2019-12-28 17:02:35 · 124 阅读 · 0 评论 -
Wait任务 Actions - 【Wait】
时间单位:秒,这个任务会在1秒钟之后执行后面的任务。原创 2019-12-28 16:16:30 · 110 阅读 · 0 评论 -
将现有任务替换为其它任务
将Idle替换成Wait任务,在Idle上点右键原创 2019-12-28 16:14:54 · 204 阅读 · 0 评论 -
Idle任务 Actions - 【Idle】
返回一个正在运行的任务状态。将仅在中断或触发条件中止时停止。当执行到Idle任务时会待机,不会往后执行。运行结果是第一个LOG已经运行,第二个LOG没有被执行...原创 2019-12-28 16:11:45 · 484 阅读 · 0 评论 -
容器任务-Sequence-且操作 Composites - 【Sequence】
两种添加方式或者鼠标点击红框区域连接到Sequence任务,有感叹号的因为它是一个容器,下面必须要有子任务。子任务的运行顺序是从左往右执行子任务全部被执行后,Sequence的状态才会显示绿色勾号a&&b,必须都为true,这个任务才为true将Log任务连接到Sequence再次创建一个Log并连接Sequence,修改它的值为2...原创 2019-12-28 16:09:29 · 140 阅读 · 0 评论 -
给物体添加一个行为树,并添加Log任务
创建一个胶囊,修改名称:EnemyBehavior行为树点击Enemy,插件会显示红框内容,右键创建一个行为树插件会自动创建一个Behavior Tree组件修改行为树的名字和描述Task任务右键为行为树添加任务鼠标移上去会显示隐藏或者显示log:日志是一个简单的任务,它将输出指定的文本并返回成功。它可以用于调试。InsPector...原创 2019-12-28 15:13:06 · 174 阅读 · 0 评论 -
Behavior Tree的安装与介绍
资源商店里购买behavior designer导入插件导入后菜单栏会多一个Tools打开EditorBehavior给对象添加的行为树Tasks任务,一个行为树由很多任务组成Variables变量,相当于动画状态机里面的参数,InsPector相当于项目里的属性...原创 2019-12-28 15:10:19 · 469 阅读 · 0 评论