Environment Query Testing Pawn

EQS Testing Pawn を使用して EQS クエリの実行内容をデバッグおよび表示する方法を概説します。

Windows
MacOS
Linux

EQS_Testing_Pawn_Topic.png

AI デバッグ ツールに加えて、Environment Query System には、Environment Query System Testing Pawn (EQSTestingPawn) と呼ばれる特別な Pawn クラスがあります。このクラスでは、Environment Query が実際に実行している内容を確認できます。Environment Query の正確な特性では作成されるもののサイズと形状を定義していますが、常に色付きの球体で表されます。球体は、緑から赤のカラー スケールで、Environment Query が実行した各種テストに対する一致レベルを表します。青の球体は失敗、または Trace テストなどの boolean 型のテストが false を返したことを表します。

EQS Testing Pawn の使用方法

EQS を有効にして、EQS Query を作成したら、エディタで EQS Testing Pawn を使用してデータをテストできます。 

  1. コンテンツ ブラウザ で、 EQSTestingPawn クラスの新規の ブループリント を作成して、名前を付けます。

    EQSPawn_01.png

  2. EQSTestingPawn をレベルに置き、[Details (詳細)] パネルで、 EQS Query テンプレート をテストに割り当てます。

Environment Query System の実験的な性質を考慮すると、EQSTestingPawn はプロセッサをきわめて集中的に使用する可能性があるため、有効なクエリ テンプレートに変更を加えると、システムが長時間ハングする場合があります。Environment Query を編集している間は、[Query Template (クエリ テンプレート)] プロパティをクリアすることをお勧めします。

レベルで EQSTestingPawn を選択すると、クエリの内容に応じて、条件に基づいた一致の値を示すデバッグ球体がレベルに表示されます。以下では、EQSTestingPawn を使用して、プレイヤー キャラクターが視野に入るレベルでのできる限り最も良い位置を提供するクエリをテストします。EQSTestingPawn を動かすと、球体の色と値が更新され、プレイヤーと EQSTestingPawn の位置に基づいて新しい最良の一致が示されます。

結果の評価

EQSTestingPawn を使用してテストの結果を評価すると、色付きの球体と値で、特定の位置にあるアイテムの一致レベルが示されます。

  • 青の球体: アイテムに対してテストは失敗したので、アイテムは完全にウェイトが外され、結果から除外されました。これは、通常、Distance テストを使用して特定の範囲を上回る (あるいは下回る) アイテムを除外するなど、値をフィルタリングすると発生します。値を完全に除外したくない場合は、スコアリングセクションの [Clamp (クランプ)] オプションを使います。以下では、プレイヤーが見える場所を見つけるために実行されているクエリがあります。[Visibility (可視性)] を使用して、AI がプレイヤーが見えないアイテム (青い球体で表される) を除外します。EQS_Breakdown_01.png

  • 緑から赤の球体: 球体の色は緑から赤の範囲であり、指定されたテストに最も一致するものとして、アイテムの好ましさの度合いを示します。赤より緑の方が好ましく、以下に示されている数字はアイテムのウェイトです。デバッグ ステップを 1 つだけプレビューする場合は、この値が選択されているテストの最終値となります。以下では、可視性に関係なく、クエリを使用してプレイヤーから最も離れたポイントを見つけます。EQS_Breakdown_02.png

EQS Testing Pawn のプロパティ

レベルで EQSTestingPawn が選択されていると、[Details (詳細)] パネル内で次のプロパティを使用できます。 

プロパティ

説明

Query Template (クエリ テンプレート)

EQSTestingPawn が使用する必要のある Environment Query です。

Query Config (クエリの設定)

指定した値を Environment Query に渡して、設定値を素早く調整できます。

Time Limit Per Step (ステップごとの時間制限)

0.0 より大きい値に設定されると、このプロパティが設定された時点で EQSTestingPawn がステップの計算を停止します。EQSTestingPawn の使用中の Environment Query の調整を軽減することができます。 

注: Density が高い、大きな Simple Grid などを使用している **ジェネレータ**の位置計算にかかる時間は短縮されません。

Step to Debug Draw (ステップごとのデバッグ描画)

デバッグ ステップを 1 つだけ表示します。ステップは Environment Query 内に表示される順序ではマッピングされない場合があります。

Highlight Mode (ハイライト モード)

すべての球体を同じサイズで表示するかどうか、5%または25%最適な球体を表示するかどうかを決定します (他の球体のサイズが縮小されます)。

Draw Labels (ラベルの描画)

ビューポートのデバッグ球体にウェイトまたは失敗の理由を描画できます。

Draw Failed Items (失敗したアイテムの描画)

トレースでターゲットを見つけられなかった場合など、失敗したテストをカリングできます。

Re Run Query Only on Finished Move (移動完了時にクエリのみを再実行する)

EQSTestingPawn の移動を停止すると、ビューポートのビジュアル化のデバッグのアップデートのみ行われます。非常に速い Environment Query を操作する場合以外は、このプロパティをオンにしておくことをお勧めします。

Should be Visible in Game (ゲームで表示する)

EQSTestingPawn とそのデバッグのビジュアル化を実行中のゲームで可視化します。

Tick During Game (ゲーム時のティック)

実行中のゲームで EQSTestingPawn とそのデバッグの視覚化をティックします。

Querying Mode (クエリ モード)

デバッグ ビューが表示する内容を変更します。

説明

Single Result (結果のみ)

[Step to Debug Draw (ステップごとのデバッグ描画)] プロパティにリストされたアイテムの結果のみ表示します。

All Matching (すべてのマッチ)

フィルタリングし、ウェイト付けした、Environment Query 全体の最終的な点数を表示します。

Nav Agent のプロパティ

Pawn の移動方法を決定するプロパティ。 

説明

Nav Agent Radius (Nav Agent の半径)

ナビゲーション/パス検索に使用されるカプセルの半径です。

Nav Agent Height (Nav Agent の高さ)

ナビゲーション/パス検索に使用されるカプセルの全高です。

Nav Agent Step Height (Nav Agent のステップ高)

使用するステップの高さ、または NavData の構成設定のデフォルト値を使用する場合は -1 です。

Nav Walking Search Height Scale (Nav Walking 検索高さのスケール)

Nav ウォーキング時に投影する NavMesh を検索するときに境界の高さに適用するスケーリング係数です。

Preferred Nav Data (優先される Nav データ)

このプロパティは、Testing Pawn にテストの実行対象となる Navigation Data クラスの型を指定します。

Can Crouch (しゃがむことができる)

true の場合、Pawn はしゃがむことができます。

Can Jump (ジャンプできる)

true の場合、Pawn はジャンプできます。

Can Walk (歩くことができる)

true の場合、Pawn は地面の上を歩いたり、移動したりできます。

Can Swim (泳ぐことができる)

true の場合、Pawn は泳いだり、大量の液体の中を移動することができます。

Can Fly (飛ぶことができる)

true の場合、Pawn は飛ぶことができます。

Select Skin
Light
Dark

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信