行为树-学习笔记(3)-rain插件做简单的敌人AI(2)

这篇博客介绍了如何在Unity3D中使用Rain插件创建行为树来实现敌人的巡逻AI。首先讲解了巡逻路径的制作,包括创建Waypoint Route和Navigation Mesh,并详细阐述了这两个组件的用途和设置。接着,作者引入了行为树编辑器,解释了行为树的基本结构和主要节点类型,包括Action和Decision节点的功能。文章以行为树编辑初步收尾,预告下一次将实现行为树的巡逻功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

巡逻路径与行为树初步

资源已上传AI学习demo

巡逻路径的制作

在制作AI行为树之前,先要把巡逻路径做出来。
这里写图片描述
本次制作用到 Navigation Mesh 与 Waypoint Route 这两个组件。

首先创建 Waypoint Route

这里写图片描述
我们可点击Add 或用 快捷键 添加 巡逻点,巡逻点重叠在一起,移动开就可以,自己布置巡逻路径即可。
这里写图片描述
巡逻点就是圆圈 一共四个
再看Drop to surface 就是巡逻点贴到地面的意思。

下一步创建Navigation Mesh

这里写图片描述
这个是计算碰撞体的,检测周围不可穿越的物体之类的,比如上图中白色障碍物。
用included layers 可忽略或增加某层的检测,比如上图,意思是检测一切的物体,你可以选择。
这个检测 是有范围的,可以调整范围到合适的大小,这样计算的时间会缩短。
调好后 点击Generate Navigation Mesh
不满意可点击下面clear Navigation Mesh,重来。
这里写图片描述
看那紫色的框框就是 检测范围 自己调即可 用scale调也行。

行为树编辑初步

点击菜单栏中RAIN 中的 Behavior tree editor
这里写图片描述
右侧有create 点后出现如上图,起个名字即可

最初会出现BT节点(视为开始),和一个顺序子节点seq
右击顺序节点Create,即可创建子节点。下面介绍一下各个节点
这里写图片描述
节点分为Action与Decision,简单理解 Action 就是执行节点,Decision就是选择逻辑,决定最终执行哪个Action。
Action部分
{
Animate 播放动画
Audio 播放声音
Custom Action 执行自己写的类(自己写的类会挂载上面)
Detect 通过监视器(sensor 讲AI组件时提到过分为声音或视觉监视)捕捉对象(寻找敌人),形成对象存到 AI组件Memoery中(就是那个灯泡图标的,游戏运行时,会动态的进行)
Expression表达式 可以写一些表达式判断对错后返回true 或 false(有什么用等等再说)
Mecanim 动画状态机可以改变状态机参数来控制动画播放
Move 移动就是移动到目标(巡逻或发现敌人时可用)
Timer 延时,表达式可以用random 也可常数
Yield和协程有关自己看
}

Decision部分(决定节点执行的顺序或方法)
{
constraint 条件 达到条件执行子节点
custom decision自定义条件 自己写类
iterator 反复执行子节点一定次数
parallel 平行的执行子节点
priority 优先执行 并反复执行 子节点
random 随机执行子节点
selector 选择某个子节点执行
sequencer 按重上到下,的顺序一次执行子节点
waypointpatrol 选择对应 Waypoint Route,巡逻节点
waypointpath 对应 Waypoint network那种路线(本例中不用)
}

行为树从上到下执行完一遍后不会在执行,除非(1)执行节点选择的是forever,或是其他两种(2)选择节点,条件节点条件改变需要再次执行到子节点。
这里写图片描述

就到这里了-下次-行为树编辑巡逻功能的实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值