EQS ノードのリファレンス:テスト

EQS 内でテストを使用して「最も良い」選択肢を生成する方法を説明します。

Environmental Query System (EQS) で テスト を 実行すると、コンテキスト (すなわち、基準となる枠組み) を考慮して、ジェネレータ から生成されたどの アイテム が「最も良い」選択肢であるかを特定することができます。エンジンでは複数のテストが提供されています。これらのテストでは、「他の位置をアイテムからトレース (見ることが) できるか」または「アイテムとそのコンテキスト間の距離は指定の範囲内になっているか」など、大多数のユースケースが網羅されています。また、ジェネレータには複数のテストを追加できますが、これは結果を絞り込む効果的な方法であり、最も良いオプションを提供します。 

デフォルトのエンジン テストで希望の結果が得られない場合は、C++ コードを使用してカスタム テストを作成することができます。

テストの共通プロパティ

各テスト タイプには、テストの実行方法を定義できる固有のプロパティが複数あります。ただし、テストの目的と結果の処理内容を定義するために使用する全テストに共通のプロパティも複数あります。例えば、結果をフィルタリングするためにテストを使用するのか、または結果をスコアリングして、ウェイト付けするためにテストを使用するのか、あるいはその両方を実行するためにテストを使用するのかは、共通プロパティで指定します。EQS エディタでテストを選択する際には、[Details (詳細)] パネルの複数のプロパティの中の [Test Purpose (テスト目的)] を定義できます。 

テストのプロパティ

プロパティ

説明

Test Comment

テストの用途に関するオプションのコメントまたは説明です。これは、テストの目的が明確でない場合、特に同じタイプのテストが複数ある場合に役立ちます。

Test Purpose

テストで使用できる追加オプションとそのテストの用途を定義します。 

プロパティ

説明

Filter Only (フィルタのみ)

可能性のある結果を絞り込みます。テストに合格しないアイテムは削除されます。

Score Only (スコアのみ)

可能性のある結果をスコアリングします。返されたアイテムはウェイト値が付与されます。

Filter and Score (フィルタおよびスコア)

結果を絞り込み、スコアを付けます。

フィルタのプロパティ

次のオプションは、[Test Purpose (テスト目的)] が [Filter (フィルタ)] に設定されている (または [Filter and Score (フィルタとスコア)] に設定されている) 場合に使用できます。

フィルタリングは、除外されたアイテムのスコアを計算しないように、スコアリングの前に実行されます。

プロパティ

説明

Bool Match 

スコアリング係数を指定する場合に、照合する値 (true または false) です。テストを実行して、この値に一致しない場合はスコアは変わりません。例えば、Trace テストでヒットしたかどうかの true/false や、 Pathing でパスが存在するか?についての true/false を照合します。

Multiple Context Filter Op

Distance To コンテキストで複数のアイテムが返される場合のフィルタリング演算子を定義します。[All Pass (すべて合格)] はすべてのコンテキストが合格する必要があることを示し、[Any Pass (いずれが合格)] は 1 つ以上のコンテキストが合格する必要があることを示します。

Float Value Min

この値以下のすべての値をフィルタリングします。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Float Value Max

この値以上のすべての値をフィルタリングします。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Filter Type

[Minimum (最小)]、[Maximum (最大)]、または値の [Range (範囲)] に適用されるフィルタのタイプを変更します。[Float Value Min (最小浮動小数値)] プロパティまたは [Float Value Max (最大浮動小数地)] プロパティでの指定の値から外れた値は除外されます。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

スコアのプロパティ

次のオプションは、[Test Purpose (テスト目的)] が [Score (スコア)] (または [Filter and Score (フィルタとスコア)] に設定されている) に設定されている場合に使用できます。

プロパティ

説明

Multiple Context Filter Op

Distance To コンテキストで複数のアイテムが返される場合のフィルタリング演算子を定義します。[All Pass (すべて合格)] はすべてのコンテキストが合格する必要があることを示し、[Any Pass (いずれが合格)] は 1 つ以上のコンテキストが合格する必要があることを示します。

Clamp Min Type

スコアリング式を適用する前に未処理のテスト値を正規化するために [Specified Value (指定値)] を使用するか、検出された (テストされた) **最小**値を使用するかを定義します。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Clamp Max Type

スコアリング式を適用する前に未処理のテスト値を正規化するために [Specified Value (指定値)] を使用するか、検出された (テストされた) **最大**値を使用するかを定義します。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Scoring Equation

[Constant (定数)]、[Linear (線形)]、[Square (二乗)]、[Inverse Linear (逆線形)]、または [Square Root (二乗根)] のタイプの曲線に従うようにテストのスコアが変更されます。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Scoring Factor

スコアリング式が適用された後に正規化スコアを乗算するためのウェイト (係数) です。この値には負数を指定できます。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Normalization Type

スコアの正規化に使用される値の範囲を決定する方法 ([Absolute (絶対値)] (正規化範囲のベースとして 0 を使用) または [Relative to Scores (スコアに対する相対値)] (正規化範囲のベースとしてアイテムの最小スコアを使用)) を指定します。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Reference Value

値が [Reference Value (基準値)] に近いほど、より高い正規化結果が生成されるように、テストの結果を正規化します。[Reference Value (基準値)] から最も離れた値は 0 に正規化され、その中間にある他のすべての値は [Reference Value (基準値)] までの距離に比例して直線的に正規化されます。 

このオプションは、Distance テストおよび Dot テストのみで使用できます。

Distance

Distance Test

Distance テストでは、アイテムと選択した [Distance To (距離)] プロパティとの間の直線距離を返します。 [Distance To (距離)] が複数の位置である場合、それぞれの距離を確認した結果の平均値になります。 

Distance Test Details

プロパティ

説明

Test Mode

Distance テストを、3D 空間で行うか、2D XY 面 で行うか、Z または Z (絶対値) 軸 に沿って行うかを設定します。

Distance To

距離の測定に使用するコンテキストです。

Dot

Dot Test

Dot テストでは、2 つのベクターの内積 (Dot Product) を計算します。コンテキストの回転である場合は、あるポイントから別のポイントへのベクターである場合があります。あるものが別のものと向かい合っているかを特定するのに役立ちます。

Dot Test Details

次のプロパティは Dot テストで使用できます。 

プロパティ

説明

Line A Mode

テストで使用する 最初の 線の方向を定義します。方向を取得するには、次の 2 つの方法があります。 

プロパティ

説明

Rotation

指定されたコンテキストが方向として使用されます。

Two Points

あるコンテキストの位置からから他のコンテキストの位置への方向です。

Line B Mode

テストで使用する 2 番目の 線の方向を定義します。方向を取得するには、次の 2 つの方法があります。 

プロパティ

説明

Rotation

指定されたコンテキストが方向として使用されます。

Two Points

あるコンテキストの位置からから他のコンテキストの位置への方向です。

Test Mode

テストの計算に使用するベクターを、完全に 3D ベクターにするか、Line A ベクターと Line B ベクターが向かっている 2D のベクターにするかを指定します。

Absolute Value

Dot Product (内積) が -1.0 から 1.0 までの値を返すことで、テストが Dot product の絶対値を返します。

Gameplay Tags

Gameplay Tags Test

Gameplay Tags テストを使用すると、クエリするタグを指定して、テストでの照合を試行することができます。 

Gameplay Tags Test Details

プロパティ

説明

Tag Query to Match

検証するタグを指定できる Gameplay Tags エディタを開きます。

Reject Incompatible Items

IGamePlayTgAssetInterface を実装していないアクタの処理方法を制御します。true の場合、インターフェースを実装しないアクタは無視されます。つまり、スコアリングされず、フィルタリング時に考慮されません。false の場合、インターフェースを実装しないアクタは、スコアがゼロのフィルターおよびスコア操作に含まれます。

Overlap

Overlap Test

Overlap テストを使用すると、1 つまたは複数のアイテムがプロパティで定義された範囲内にあるかどうかを特定できます。 

Overlap Test Details

プロパティ

説明

Extent X

X 軸に沿ったオーバーラップの形状パラメータです。

Extent Y

Y 軸に沿ったオーバーラップの形状パラメータです。

Extent Z

Z 軸に沿ったオーバーラップの形状パラメータです。

Shape Offset

オーバーラップをテストするアイテムの位置からのオフセットです。例えば、平らな地面と重ならないようにするために、垂直方向にオフセットする必要がある場合があります。

Overlap Channel

オーバーラップに使用するジオメトリ トレース チャンネルです。

Overlap Shape

ジオメトリ オーバーラップに使用する形状 ([Box (ボックス)]、[Sphere (球体)]、[Capsule (カプセル)]) です。

Only Blocking Hits (ブロッキング ヒットのみ)

オンの場合、オーバーラップで、ブロッキング ヒットのみを検索します。

Overlap Complex

オンの場合、オーバーラップが複雑なコリジョンでのみ実行されます。

Skip Overlap Querier

設定されている場合、オーバーラップはクエリア コンテキストヒットをスキップします。

Pathfinding

Test_Path.png

Pathfinding テストを使用すると、コンテキストへの (またはコンテキストからの) パスが存在するかどうか、コンテキストへの (またはコンテキストからの) パスのコストレベル、またはパスの長さを特定できます。 

Test_Path_Details.png

プロパティ

説明

Test Mode

テストの適用方法:

プロパティ

説明

Path Exist

コンテキストまでの (からの) パスが存在するかどうか。

Path Cost

コンテキストまでの (からの) パスのコスト。

Path Length

コンテキストまでの (からの) 長さ。

Context

パスまでの (パスからの) からのコンテキストです。

Path from Context

パスファインダがコンテキストまで (false) なのか、コンテキストから (true) なのかを設定します。

Filter Class

パス検索に使用するオプションのナビゲーション フィルタです。

Skip Unreachable

オンの場合、失敗したパスを持つアイテムが無効になります。

[Test Mode (テスト モード)] が [Path Cost (パスの負荷)] または [Path Length (パスの長さ)] に設定されている場合、[Details (詳細)] パネルの [Filter (フィルタ)] セクションと [Score (スコア)] セクションは、通常、Dot テストおよび Distance** テストで概説されている共通プロパティでのみ使用可能なオプションを提供するように変わります。

Pathfinding Batch

Test_PathBatch.png

Pathfinding テストを使用すると、コンテキストへの (またはコンテキストからの) パスが存在するかどうか、コンテキストへの (またはコンテキストからの) パスの負荷のレベル、またはパスの長さを特定できます。処理されるすべてのコンテキスト (パス) は、定義された [Test Mode (テスト モード)] に応じてスコアリングされます。 

Test_PathBatch_Details.png

プロパティ

説明

Test Mode

テストの適用方法:

プロパティ

説明

Path Exist

コンテキストまでの (からの) パスが存在するかどうか。

Path Cost

コンテキストまでの (からの) パスの負荷。

Path Length

コンテキストまでの (からの) 長さ。

Context

AI に必要な「までのパス」または「からのパス」を指定するコンテキストです。

Path from Context

パスファインダがコンテキストまで (false) なのか、コンテキストから (true) なのかを設定します。

Filter Class

パス検索に使用するオプションのナビゲーション フィルタです。

Scan Range Multiplier

ポイントとコンテキスト間の最大距離の乗数です。

Skip Unreachable (到達不可能なアイテムをスキップ)

オンの場合、失敗したパスを持つアイテムが無効になります。

[Test Mode (テスト モード)] が [Path Cost (パスの負荷)] または [Path Length (パスの長さ)] に設定されている場合、[Details (詳細)] パネルの [Filter (フィルタ)] セクションと [Score (スコア)] セクションは、通常、Dot テストおよび Distance** テストで概説されている共通プロパティでのみ使用可能なオプションを提供するように変わります。

Project

Test_Project.png

Project テストを使用すると、結果のアイテムを NavMesh (および NavMesh データ セットを使用するアイテム) 上に投影できます。 

これにより、壁の内側にあるアイテムやブロックされているアイテムが NavMesh に移動します。このため、グリッド線が NavMesh のエッジを超えていると、バンチングが生成される可能性があります。

Test_Project_Details.png

プロパティ

説明

Trace Mode

ジオメトリ トレーシングに使用される形状です。

プロパティ

説明

Navigation

コンテキストまでの (からの) パスが存在するかどうか。

Geometry

コンテキストまでの (からの) パスの負荷。

Navigation Filter (ナビゲーション フィルタ)

使用する (オプションの) ナビゲーション フィルタのクラスです。

Extent X

トレースの形状パラメータです。

Project Down

検索高さが指定されたポイントより下で定義されます。

Project Up

検索高さが指定されたポイントより上で定義されます。

Post Projection Vertical Offset (投影後の垂直方向のオフセット)

この値は結果の位置の Z 軸に追加されます。 

これはナビゲーションにポイントを投影するときに役立ちます。Navmesh は単なるレベルのジオメトリの近似であり、最終的にアイテムがコリジョン可能なジオメトリになる可能性があるためです (falsify visibility (可視性改ざん) テストなど)。

Trace

Test_Trace-1.png

Trace テストでは、アイテムまたはコンテキストまで (またアイテムまたはコンテキストから) トレースし、ヒットしたかどうかを返します。[Filter (フィルタ)] オプションの [Bool Match (ブーリアン一致)] を使用すると、結果を反転できます。このタイプのテストの一般的なユースケースの 1 つは、敵がレベルでプレイヤーを見ることができるか、できないかを特定することです。 

Test_Trace_Details-1.png

プロパティ

説明

Trace Mode

ジオメトリ トレーシングに使用される形状です。

Property

Description

Geometry by Channel

チャンネル レースを使用して、コンテキストへのパス (またはコンテキストからのパス) のコストを決定します。

Geometry by Profile

プロファイル レースを使用して、コンテキストへのパス (またはコンテキストからのパス) のコストを決定します。

Trace Channel

トレースを実行するチャネルです。デフォルトでは、[Visibility (可視性)] オプションと [Camera (カメラ)] オプションを使用できます。ただし、[Project Settings (プロジェクト設定)] の [Edit Menu (編集メニュー)] > [Project Settings (プロジェクト設定)] > [Physics (物理)] > [Trace Channels (トレース チャンネル)] セクションでその他のチャンネルを追加できます。

Trace Shape

トレースを実行する形状。[Line (線)]、[Sphere (球体)]、[Box (ボックス)]、または [Capsule (カプセル)] です。

Trace Complex

トレースがメッシュ (複雑) に対して行われるのか、単純なコリジョンに対して行われるのかを指定します。

Only Blocking Hits

トレースでブロッキング トレースと非ブロッキング トレースのどちらを結果に使用するのかを指定します。

Trace from Context

Querier、アイテム、ユーザーが作成したカスタム コンテキストなど、トレースの開始元のコンテキストです。

Context

トレースの他方のエッジです。

Item Height Offset

テストがそのアイテムまで (またはそのアイテムから) トレースしているアイテムに、cm 単位で Z オフセットを追加します。

Context Height Offset

テストがそのコンテキストまで (またはそのコンテキストから) トレースしているコンテキストに、cm 単位で Z オフセットを追加します。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル