快捷导航
网站首页
疑难问答
Foreign
手游源码
端游源码
页游源码
手游单机
开启辅助访问
登录
or
注册
永久会员提供整站资源下载
游戏源码
»
源码论坛 BBS
›
游戏引擎
›
游戏引擎资源/文档
›
虚幻4官网翻译文档
›
14.构建行为树
返回列表
查看:
472
|
回复:
0
[引擎的各个功能]
14.构建行为树
[复制链接]
admin
admin
当前离线
积分
75866
1
主题
342
帖子
7万
积分
管理员
积分
75866
发消息
发表于 2017-4-8 07:16:49
|
显示全部楼层
|
阅读模式
14.构建行为树
Unreal Engine 4.9
Previous Step
Next Step
Quick Start Home
现在构建行为树的所有部件都已准备就绪:
我们来看看存在哪些逻辑。
检测到 Pawn 是 AI 角色时,AI 不会开始行动。
AgroCheck Service 将不断寻找符合条件的目标。
发现目标后,最左边的分支打开,AI 开始追赶目标 Pawn。
和 Pawn 之间的距离足够近之后,分支将阻止行动继续执行,而将其返回至图表顶端。
如目标 Pawn 隐藏,将运行最右边的分支,使 AI 向目标 Pawn 的最后已知位置前进。
到达此位置后,AI 将等待,然后返回出发地。
在任何时候,一旦发现符合条件的目标,最右边的分支将强制停止执行,最左边的分支将被打开。
一起来看看如何创建行为树。
步骤
基础设置
该指南第八部分中应该已经执行过此操作,以防您未保存,再次梳理一遍创建行为树基础架构的步骤。
如果行为树资源还没有打开并处于编辑状态,在 内容浏览器 中 双击 打开进行编辑。
切换至行为树模式
在最初编辑行为树时,它只有 Root 节点:
可在图表编辑器中 单击右键 创建节点
添加一个 Composites -> Sequence 节点。
添加两个 Composites -> Selector 节点。
将 Root 节点和 Selector 节点之一连接起来。
将新连接的 Sequence 节点和 Selector 节点,以及其他 Sequence 节点连接起来。按此方法进行整理:
第二个 Selector 节点在左边,Sequence 节点在右边。
添加 Service 节点
使用最上方 selector 节点上的 右键单击 快捷菜单,添加一个 Services -> Agro Check 节点。
选择 Selector 节点上的 Agro Check 框,然后使用 Details 面板将 Target to Follow 属性设为 TargetToFollow、Target Location 设为 TargetLocation、将 Interval 调至 0.5、Random Deviation 调至 0.0。
添加 Tasks
在图表区域中 单击右键 打开快捷菜单,然后添加 4 个 Tasks:1 个 Rapid Move To 节点、1 个 Wait 节点、2 个 Move To 节点。
将偏下方的 Selector 和 Rapid Move To 节点连接起来。
将 Sequence 节点和两个 Move To 节点,以及 Wait 节点连接起来。
按以下方式排列节点:
从左至右:Rapid Move To、Move To、Wait、Move To。
选择最左边的 Move To 节点,然后使用 Details 面板将其 Blackboard Key 属性设为 TargetLocation
将最右边 Move To 节点上的 Blackboard Key 属性设为 HomeLocation
选择 Wait 节点,然后使用 Details 面板将 Wait Time 属性设为
2.5
复制代码
选择 RapidMoveTo 节点,然后使用 Details 面板将 Target to Follow 属性设为 TargetToFollow。
添加 Decorators 节点
在偏下方的 Selector 节点上 单击右键,选择 Add Decorators..-> Blackboard。
在偏下方的 Selector 节点上 单击右键,选择 Add Decorators..-> Close Enough。
将 黑板 decorator 上的 Observer Aborts 属性设为 Both、Key Query 设为 Is Set、Blackboard Key 设为 TargetToFollow
将 Close Enough decorator 上的 Acceptable Distance 属性设为 100.0、Target to Follow 属性设为 TargetToFollow。
在 Sequence 节点上 单击右键,选择 Add Decorators..-> Blackboard。
在 Sequence 节点上 单击右键,选择 Add Decorators..-> Is At Location。
在 Sequence 节点上 单击右键,选择 Add Decorators..-> Blackboard。
添加全部 decorators 后,整个节点块的外观如下:
在第一个 黑板 decorator 上,将 Key Query 设为 Is Not Set、Blackboard Key 设为 TargetToFollow
在第二个 黑板 decorator 上,将 Key Query 设为 Is Set、Blackboard Key 设为 TargetLocation
在 Is At Location decorator 上,启用 Inverse Condition 属性并将 Blackboard Key 设为 HomeLocation。
对这些属性进行设置后,整个节点块的外观如下:
大功告成!使用 Play in Editor 时打开 行为树 编辑器可以看到树的运行方式。玩家进入判定区域中 AI 的视线时,它将开始追赶玩家。如 AI 视线受阻,它将前往玩家的最后已知位置、等待、然后回到出发点。
Previous Step
Next Step
Quick Start Home
完整内容索引
2004-2017, Epic Games, Inc. 版权所有。Unreal 及相关的商标是 Epic 在美国和其他国家的注册商标。
使用条款 | 隐私政策
回复
使用道具
举报
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
enginedx注册
本版积分规则
发表回复
回帖后跳转到最后一页
邮件留言:
游戏源码
返回顶部