UE4蓝图AI角色制作(四)之Gameplay调试器
8、 寻路网格体和Gameplay调试器
为了及时识别出AI系统中的导航问题,UE4提供了一个工具用来解决这类问题,它叫Gameplay调试器。打开项目设置,在左侧找到“引擎”,然后找到“Gameplay debugger”。查看“输入分段”,检查激活键有没有绑定。记住绑定的键盘键,然后播放游戏,通过快捷键打开“Gameplay debugger”,然后看向AI所在的位置,在屏幕上会出现许多信息并在不断更新。按“shift+F1”会出现光标,点击暂停,我们可以仔细看显示的参数。在左上方,我们可以看到一个列表,提示我们可以按哪些键来显示Gameplay调试器中的各种功能,它可以告诉我们Gameplay调试器绑定了哪个键。表下面是调试器最重要的几个功能,导航网格体、AI、行为树、EQS和感知。继续播放,按“Tab”键可以进入旁观者模式。

其中,数字键0对应着左上角信息中导航网格体信息的展示或关闭,数字键1对应着AI相关的信息,数字键2对应着行为树信息。
9、AI感知原理
在本模块中,我们将对AI感知系统一探究竟,了解如何将它们整合到AI中,以及系统中的各个部分如何帮助AI感知整个环境。我们还将了解这些部分如何通过蓝图代码传递它们的信息。
虚幻引擎提供了一个AI感知系统,它能控制Actor的感知内容和能够感知到的场景区域。AI感知系统中有两个关键组件,分别是AI感知组件和AI感知刺激源。AI感知刺激源组件将决定Actor拥有哪些“可感知”属性,而AI感知组件则决定哪些感官可以使用或者被感知到。 AI感知组件这个组件允许我们设置感知系统可以使用哪些感官或“看到”哪些内容。同一个组件中可以添加多种感官。此外,在确定被感知Actor的位置时,你可以通过“主导感官”属性指定优先使用哪种感官进行感知。例如,在视频游戏中,你可能会希望“视觉”优先于“听觉”。

AI感知刺激源:为Actor添加这个组件将决定AI感知系统会注册哪些感官。例如,假如你将某个AI感知刺激源设置为只对视觉产生刺激,那么拥有视觉感官的AI就会感知到这个刺激源Actor。单个组件可以注册多个刺激。
事件和刺激:在确定了场景中会生成哪些Actor作为刺激源后,AI就需要针对这些信息进行思考,并考虑基于它们感知到的信息可能要采取哪些行动。为此,你需要使用On Target Perception Updated事件。这个事件会通过AIStimulus结构体为我们提供有关被感知刺激源的实用信息。此外在项目中,你还会找到许多其他有用的感知事件。你可以在AI感知文档页面中找到这些事件的详细列表。其地址是:“https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/AIPerception/index.html”。
AI的感知方式:1、确认来源和刺激源:为了让AI感知到对象,场景中的对象需要添加刺激源组件。2、为了让AI角色感知到刺激,我们腰围AI添加一个AI感知组件。如果某个Actor要成为刺激源,它就必须被赋予一个AI感知刺激源组件。3、感知刺激:如果我们在玩家的AI感知组件中添加“视觉”感官,那么当AI角色看到玩家角色时,它就会检查AI感知组件。如果玩家角色拥有可以被感知的刺激,并且该刺激在AI感知组件中是有效的,那么玩家就会触发AI角色中的On Target Perception Updated事件。
UE4蓝图AI角色制作(四)之Gameplay调试器的更多相关文章
- UE4蓝图AI角色制作(三)
接上一节 6. 寻路网格体代理 通过允许配置多个"代理",虚幻引擎使得用户能够轻松为大小各异的AI创建寻路网格体.首先,选中世界大纲视图中的"RecastNavMesh& ...
- UE4蓝图AI角色制作(七)之追逐玩家
15.追逐玩家 现在我们的AI无法做出任何决策,它总是执行相同的决策.我们先把感知系统中的相关信息提供给AI,让AI知道如何做出决策,然后我们会修改行为树.我们首先需要创建新的黑板键,这样我们就能在行 ...
- UE4蓝图AI角色制作(六)之行为树
13.行为树原理 AI最重要的环节就是行为树.我们将解释什么是行为树.为何它如此重要,以及构建行为树需要哪些元素. 借助行为树,我们可以轻松控制并显示AI的决策制定过程.行为树是一种将AI在场景中的决 ...
- 【摸鱼向】UE4的AI模块探索手记(1)
前言 之前实现了自主创作的角色导入进UE4并成功控制其进行一系列动作,但目前的样子距离基本的游戏架构还差了一个很大的模块:NPC,而这部分是由电脑来进行自动控制,所以,我有一句话不知当讲不当讲(对,我 ...
- UE4简单AI
首先做个小小的声明把,由于俺之前也没接触过AI ,所以有一些专业的词汇可能翻译存在各种问题,如果你发现的话,还是希望能够提出来哦,我们一起进步. 记住配合视频食用更佳哦~ 视频连接:http://ww ...
- UE4蓝图与C++交互——射击游戏中多武器系统的实现
回顾 学习UE4已有近2周的时间,跟着数天学院"UE4游戏开发"课程的学习,已经完成了UE4蓝图方面比较基础性的学习.通过UE4蓝图的开发,我实现了类似CS的单人版射击游戏,效 ...
- UE4蓝图编程的第一步
认识UE4蓝图中颜色与变量类型: UE4中各个颜色对应着不同的变量,连接点和连线的颜色都在表示此处是什么类型的变量.对于初学者来说一开始看到那么多连接点, 可能会很茫然,搞不清还怎么连,如果知道了颜色 ...
- UE4的AI学习(2)——官方案例实例分析
官方给出的AI实例是实现一个跟随着玩家跑的AI,当玩家没有在AI视野里时,它会继续跑到最后看到玩家的地点,等待几秒后如果仍然看不到玩家,则跑回初始地点.官方的案例已经讲得比较详细,对于一些具体的函数调 ...
- [UE4]让AI跑起来
让AI由静止状态变成跑步状态,做法跟玩家角色走路一样. 一.创建1D混合动画 二.在AI角色关联的动画蓝图中使用第一步创建的混合动画
随机推荐
- 01_Keil与Proteus联合仿真的注意事项
01. 关于keil5和Proteus8的联合仿真的操作步骤,这里就不细说,给个链接,步骤差不多是最齐全的 CSDN博客链接:https://blog.csdn.net/wzk456/article/ ...
- Mysql force index和ignore index 使用实例
前几天统计一个sql,是一个人提交了多少工单,顺便做了相关sql优化.数据大概2000多w. select CustName,count(1) c from WorkOrder where Creat ...
- pycharm 汉化
1.首先进入pycharm,点击file,找到setting. 2.点击 plugins 搜索Chinese,找到Chinese(simplified)Language Pack EAP,点击inst ...
- PPP协议、PPPoE协议、L2TP协议的关系
1. 简述 首先对这3中协议做一个简单的描述: 协议 协议类型 描述 PPP 点对点链路层协议 应用最广泛的点对点协议,可应用在多种网络,改善了SLIP协议的不足 PPPoE 点对点链路层协议 对PP ...
- JS013. 重写toFixed( )方法,toFixed()原理 - 四舍五入?银行家舍入法?No!六舍七允许四舍五入√!
以下为场景实测与原理分析,需要重写函数请直接滚动至页尾!!! 语法 - Number.prototype.toFixed( ) // toFixed()方法 使用定点表示法来格式化一个数值. numO ...
- .NET 6 中的HTTP 3支持
dotnet团队官方博客发布了一篇HTTP3的文章:HTTP/3 support in .NET 6:https://devblogs.microsoft.com/dotnet/http-3-supp ...
- 深入HTML5第一天
页面的title一般是30-40个字符:分别为主页,详情页,列表页 keywords:100个字符 description: em是:emphasize: 强调,着重 i:italic斜体的 : ...
- jmeter之图形结果
jmeter监听器中的图形报表如何分析,反正第一次看到图时,不觉明厉害. 样本数目:是总共发送到服务器的请求数. 最新样本:是代表时间的数字,是服务器响应最后一个请求的时间. 吞吐量:是服务器每分钟处 ...
- django 安装与配置-01
安装命令 sudo pip install django python 可以引入django说明已经安装成功 查看django的版本 查看django管理命令 django-admin django创 ...
- jmeter设置为中文
我的jmeter安装路径是在D:\Jmeter\apache-jmeter-5.1.1\bin. 设置中文有2种方法: 1.第一种方法:点击jmeter.bat进入jmeter界面,点击[option ...