Environment Query System の概要

Environment Query System の概要ページ。

Windows
MacOS
Linux

Environment Query System (EQS) は、Unreal Engine 4 (UE4) の AI ツール内の機能であり、環境に関するデータを収集するために使用できます。データ収集後、ジェネレータ を使用して、さまざまなユーザー定義のテスト を通じてそのデータに関する質問を行うと、質問のタイプに適した アイテム が返されます。EQS のユースケースの例としては、最も近い体力のピックアップや弾薬を探したり、どの敵が最も脅威となっているのかを把握したり、プレイヤーが見える位置を見つけたりすることが挙げられます (その例を次に示します)。 

EQS_OverviewFindPlayer.png

EQS の背景になる概念的な考え方と理論は、Unreal Engine 3 の Environment Tactical Query (ETQ) システムに基づいています。これについては、記事「Asking the Environment Smart Questions 」を参照してください。

EQS の基本

EQS クエリ アセットは コンテンツ ブラウザ で作成でき、専用の Environmental Query エディタ で編集できます。Environmental Query エディタはノードベースのエディタです。このエディタでは、Generator ノードを追加してアイテムを生成したり、それらのアイテムに対して実行する希望のテストやテストを実行するためのコンテキスト を追加できます。UE4 にはデフォルトで多くのタイプのジェネレータが用意されています。ただし、ブループリント (またはより迅速に実行するには C ++) を使用すると、独自のカスタムジェネレータを作成できます。 

EQS_AddingATest.png

この例では、既存のジェネレータに Distance テストを追加しています。

ジェネレータと同様に、返されたアイテムをフィルタリング (または) スコアリングするために実行できるテストにはさまざまな異なるタイプがあります。ジェネレータとは異なり、カスタム テストは C++ を使用してのみ作成できます。ジェネレータには複数のテストを追加できます。これは、返されるアイテムの結果を絞り込むことができる一般的な方法です。ジェネレータにテストを追加する順序は重要ではありません。テストのフィルタリングはテストのスコアリングの前に実行されるためです。フィルタリングは、返され、スコアリングする必要のあるアイテムを絞り込むために実行されます。テストのタイプについては、下の表を参照してください。 

ノード タイプ

説明

ジェネレータ

位置またはアクタ (**アイテム**とも呼ばる) を生成します。位置またはアクタは実際にテストされ、ウェイト付けされます。

コンテキスト

様々なテストとジェネレータの基準となる枠組みです。

テスト

Environment Query がジェネレータのアイテムから「一番良い」選択肢を決定する方法です。

これらの各タイプの詳細については、「EQS ノードのリファレンス 」を参照してください。

EQS クエリを設定したら、Run EQS Query Task ノードを使用して、ビヘイビア ツリーでそのクエリを実行できます。 

EQS_OverviewRunEQS-1.png

EQS クエリの作成と使用に関する詳細な手順については、「EQS クイックスタート ガイド 」を参照してください。

EQS の有効化

EQS の使用を開始する前に、[Editor Preferences (エディタの環境設定)] メニューで EQS を有効にする必要があります。

  • [Editor Preferences (エディタの環境設定)] > [Experimental (実験的)] > [AI] セクションで、[Environmental Query System] オプションをオンにします。

    EQSUG_EnableEQS.png

EQS Query のプレビュー

エディタで EQS クエリの結果をプレビューすることができます。エディタでは、ウェイト付け/フィルタリングされた結果がデバッグ球体で表されます。 

EQSUG_Preview.png

この画像では、レベルのプレイヤー キャラクターが見える位置を返す EQS クエリをデバッグしています。 

詳細については、「AI デバッグ 」または「EQS Testing 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