虚幻引擎(UE4) 环境问询系统EQS

举报
Dummy 发表于 2021/11/19 01:02:19 2021/11/19
【摘要】        EQS,全称Environment Query System,翻译过来是环境询问系统。官方给出的解释是,虚幻4中提供给AI,用于收集游戏当前的环境数据,进行筛选分析,寻找到最符合条件要求的结果。        假如我们做一个设计游戏,游戏开始...

       EQS,全称Environment Query System,翻译过来是环境询问系统。官方给出的解释是,虚幻4中提供给AI,用于收集游戏当前的环境数据,进行筛选分析,寻找到最符合条件要求的结果。

       假如我们做一个设计游戏,游戏开始的时候怪物会自动在随机的位置生成,一旦玩家进入怪物的搜索区域,怪物就会追过来。EQS的作用就是提供给怪物使用,让怪物找到一个合适的目标点并向前移动。

使用方法:

使用EQS

根据返回的Location数组,你就可以随机在这个数组里找一个Location用来生成怪物或者作为目标点了。

 

编辑EQS

    1.首先在EditorSetting中找到AI下面的Environment Querying System,勾选。

    2.资源管理器中的创建EQS

       

      3.双击打开,创建格子,并连接到Root上,如下:

       

       

4.创建EQS要使用的EQS Context蓝图。和普通蓝图创建方式相同,父类选择 Env QueryContext_BluepringBase。打开该Context蓝图:

Provide Actor Set方法是在基类声明的,需要在蓝图实现的方法。这里我们将所有符合要求的Actor找到返回出去。

 

5。在EQS中的SimpleGrid节点的属性栏中设置Generate Around选项:导入刚刚创建的EQS Context。

6. 在SimpleGrid节点上鼠标右击,添加筛选条件,这里我添加的条件是距离Context返回的所有的Actor中的距离。

    

就这样,整个调用的流程就是,事件触发生成机器人-》运行EQS查询符合要求的点位置  -》 EQS运行导入的EQS Context。根据条件判断,返回符合要求的Location数组。

      

 

文章来源: blog.csdn.net,作者:呦呦鹿鸣.,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/zhang1461376499/article/details/113547105

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。