场景查询系统概述

场景查询系统的概述页面。

Windows
MacOS
Linux

场景查询系统(简称EQS)是虚幻引擎4(UE4)AI工具中的一种功能,可用于收集场景相关的数据。然后该系统可以使用生成器 ,通过各种用户定义的测试 就这些数据提问,返回符合所提问题类型的最佳 项目(Item)。EQS的一些使用范例包括:找到最近的回复剂或弹药、判断出威胁最大的敌人,或者找到能看到玩家的视线(下面就会显示这样的一个示例)。 

EQS_OverviewFindPlayer.png

EQS背后的概念和理论来自虚幻引擎3的 场景战术查询(ETQ)系统,可在以下文章中读到关于该系统的更多内容:询问场景智能问题

EQS基础

EQS查询资源可以在 内容浏览器 中创建,并可在特殊的 场景查询编辑器 中编辑。场景查询编辑器是一个基于节点的编辑器,可以在其中添加生成器节点来生成项目(Item),添加需要在这些项目上运行的测试,以及运行它们的情境 。UE4默认提供了多种生成器类型,但用户可以通过蓝图创建自己的自定义生成器(还可通过C++创建,这样执行更快)。 

EQS_AddingATest.png

在上面我们对现有的生成器添加了一个 距离 测试。

与生成器类似,可以运行多种不同类型的测试来过滤返回的项目(Item)和(或)对其计分。与生成器不同的是,自定义测试只能通过C++创建。可以将多个测试添加到一个生成器,这是缩小返回项目(Item)结果范围的常见做法。对生成器添加测试的顺序并不重要,因为过滤测试都会在计分测试之前执行。这是为了减少返回且需要计分的项目(Item)。请参见下表了解测试类型。 

节点类型

描述

生成器

生成统称为 项目(Item) 的位置或Actor,系统将对它们进行测试和加权。

情景

这是各种测试和生成器的参考框架。

测试

这是场景查询系统确定来自生成器的项目(Item)是否为"最佳"选项的方式。

请参见EQS节点参考 页面,了解每种类型节点的更多信息。

设置EQS查询后,就可以使用 运行EQS查询(Run EQS Query) 任务节点通过行为树来运行。 

EQS_OverviewRunEQS-1.png

欲知创建和使用EQS查询的完整介绍,请参见EQS快速入门指南

启用EQS

在使用EQS之前,需要从 编辑器首选项(Editor Preferences) 菜单将其启用。

  • 在 编辑器首选项(Editor Preferences)> 试验性(Experimental)> AI 部分,启用 场景查询系统(Environmental Query System) 选项。

    EQSUG_EnableEQS.png

预览EQS查询

可以在编辑器中预览EQS查询的结果,会以调试球体显示加权/过滤后的结果。 

EQSUG_Preview.png

在上图中,我们调试了一个EQS查询,它返回了能看到关卡中角色的一个位置。 

欲知更多信息,请参见AI调试EQS测试Pawn

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback