UE4蓝图AI角色制作(五)之建立AI感知
10、建立AI感知
在介绍完理论知识后,我们将为AI角色添加一个AI感知组件,首先,我们将设置第一种感受——视觉,接着,我们会把玩家角色标记成AI能够感知的对象,为此,我们将为角色添加一个刺激源组件。
首先为AI角色添加一个AI感知组件,在内容浏览器中打开“AI ThirdPersonCharacter”,找到左上角的组件面板,选择“添加组件”,然后输入“AI感知”直至在下拉菜单中看到它,选中它,然后找到右侧的细节面板。在细节面板的“AI感知”分段中,找到“感官配置”,当前是一个空数组。这意味着默认状态AI不会有任何感官。点击加号图标,在数组中添加一个元素,并在下拉菜单中选择“AI视力配置”,现在AI就获得了一种感官。展开这个分段,然后展开“感官”分段,查看感官配置的全部细节。“视线半径”定义了AI能够感知到目标的距离;“失去视线半径”则定义了查看已被看到的目标的最大视线距离;底部是“次要视觉半角角度”定义了AI视线相对于AI本身正向向量的锥角。暂时我们无法定义目标是敌人、中立单位或是敌方,所以直接勾选“检测中立方”选项。之后在配置玩家时,它会被正确地识别为中立。
接下来,我们需要将玩家角色标记为刺激源,这样AI就可以在场景中看到玩家。首先在内容浏览器中打开第三人称玩家,在组件面板中点击“添加组件”按钮,输入“AI感知刺激源”,添加组件后,选中它。在右侧细节面板中,在“AI感知”分段中,勾选“自动注册为源”。现在我们需要确定其为正确的感官注册源。在感官注册源中添加一个元素,在下拉菜单中选择“AISense_Sight”。
11、AI感知和Gameplay调试器
在这一部分,为了更好观察AI角色,需要将AI角色静止,这只需在其蓝图中,使用“Alt+左键”将事件“Beginplay”连接的线取消即可。记得编译。在播放游戏前,我们最好禁止临时抗锯齿,这是因为TAA工作时会把若干帧混合在一起,这样单像素线条,例如我们即将看到的调试线条会很难看到。找到“项目设置”中“渲染”,“默认设置”,然后找到“抗锯齿方法”,在下拉菜单中从“临时抗锯齿”改为无。
现在我们播放游戏,激活Gameplay调试器,按1和2数字键取消行为树和AI相关信息,按5来显示感知信息,如图所示,如果玩家周围出现绘制的球体,则说明此时玩家可以被AI观察到。信息“视线”是1表示完全可见;“age”表示感知数据的年龄,其值为0表示是最新的信息。
按“Tab”键进入旁观者模式,拉开距离如图可以看到绿色和粉色的边界线,说明AI角色的感知距离过大,不合适。我们可以调整视觉感官的参数,让他更加符合当前的场景大小。回到AI角色的感官配置,大幅降低内测和外侧的范围。
- UE4 第一人称射击制作流程:03(图文)添加角色Idle动画蓝图
- UE4蓝图节点翻译--- Add AIPerception Component
- UE4蓝图节点翻译---Add AIPerception Stimuli Source Component
- 【UE4】 第03讲 【MOBA制作日记】 FSocket联网及角色位置同步
- UE4蓝图节点文档翻译【目录】--- AI
- UE4 自定义角色(深入动画蓝图)
- UE4蓝图案例:制作透明黑色玻璃
- UE4增加Input选项,操作蓝图完成角色移动
- 【UE4】 第01讲 【MOBA制作日记】 角色攻击事件及发射物
- UE4 蓝图完成角色的控制
- UE4蓝图制作VR漫游
- 【机器学习实战】制作五子棋AI之三:基本规则的建立【1】
- UE4 第一人称射击制作流程:04(图文)添加Socket(枪Mesh)到角色上,合适的位置
- 【UE4】【C++】判断是否撞击到物体、从蓝图中获取组件(炮管、炮塔)、根据瞄准的方向进行(角色)旋转
- UE4蓝图案例:制作点击场景中的物体弹出UMG界面
- UE4蓝图中的AI行为树功能使用经验指南
- UE4蓝图案例:制作实时反射镜面材质
- UE4蓝图案例:制作实时反射镜面材质
- UE4 第一人称射击制作流程:08(图文)开始制作AI机器敌人
- UE4]不使用角色蓝图、动画蓝图、状态机,用“24K纯C++”实现动画播放