AI デバッグ

AI デバッグ ツールを使用して AI をデバッグするためのさまざまな方法について説明します。

Windows
MacOS
Linux

AI エンティティを作成後は AI デバッグ ツールを使用することで、問題を調べたり、AI が何をしているのかをいつでも確認したりできます。一度有効にすると、Behavior TreeEnvironment Query System (EQS)AI Perception システムの表示を、すべて同じ場所で管理し、それぞれを切り替えることができます。

AI デバッグ ツールを最大限に活用するには、Behavior Tree を実行している、または AI Perception コンポーネントを備えた、レベル内の AI コントローラーを備えたポーンが必要です。AI が EQS を実行している場合にそのポーンが実行されると、AI デバッグ ツールに反映されます。

AI デバッグを有効にする

ゲームの実行中に AI デバッグを有効にするには、「'」(アポストロフィ) キーを押します。

Enabled_AI_Debugging.png

AI デバッグ ツールが有効になっている間は、次のオプションを使用できます。

コマンド

オプション

「'」(アポストロフィ) キー

AI デバッグ ツールを閉じます。

テンキー (0-4)

次のように表示されている AI 情報を切り替えます。

テンキー

デバッグ情報

テンキー「0」

現在利用可能な Nav Mesh データの表示を切り替えます。

テンキー「1」

一般的な AI デバッグ情報の表示を切り替えます。

テンキー「2」

Behavior Tree のデバッグ情報の表示を切り替えます。

テンキー「3」

EQS デバッグ情報の表示を切り替えます。

テンキー「4」

AI Perception のデバッグ情報の表示を切り替えます。

「Ctrl」キーを押しながら「`」(チルダ) キー

使用されている HUD クラスの表示を切り替えます (該当する場合)。

「Ctrl」キーを押しながら「Tab」キー

デバッグ メッセージの表示を切り替えます。

上記のテンキーの数字とそれを押して表示されるデバッグ情報は、デフォルトのデバッガ用です。これらの値は、プロジェクトのニーズに基づいて、プロジェクトごとに 0 から 9 まで動的に増やすことができます。

AI デバッグ ツールが有効になっているときにテンキー「0」を押すと、Nav Mesh Bounds Volume を使用して AI が現在の位置から現在移動可能な場所へ表示を切り替えることができます (AI がレベルに配置されている場合)。

0_NavMesh-1.png

コンソール コマンド show Navigation true (Nav Mesh を表示する) または show Navigation false (Nav Mesh を非表示にする) で、ゲームプレイ中に Nav Mesh の表示を切り替えることもできます。

AI

AI デバッグ ツールを有効にして、テンキー「1」を押すと、一般的な AI デバッグ情報が表示されます。

1_AI-1.png

AI デバッグ ツール内の AI カテゴリには、次のような AI に関する一般的な情報が表示されます。

オプション

説明

Controller Name

割り当てられている AI コントローラー クラスを表示します。

Pawn Name

割り当てられたポーン クラスを表示します。

Movement Mode (Base)

現在の移動モード (および現在移動中のメッシュ) を表示します。

Nav Data (Path following)

ナビゲーション クラスを表示します (AI が移動中の場合) 。

Behavior (Tree)

Behavior Tree が実行されているかどうか (そして、それが実行されているBehavior Tree クラス) を表示します。

Active task

割り当てられている Behavior Tree の現在チェック中のタスクを表示します。

Gameplay tasks

キューに入っているタスクの数を表示します。ゲームプレイタスクの例には、GameplayAbilitySystem タスクが含まれます。

Montage

現在アクティブな Anim Montage を表示します。

レベル内のポーンの上には、上記のオプションに加えて、割り当てられた AI コントローラー クラスとポーン クラスが表示されます (ビューポートの右上隅にも表示されます) 。

Behavior Tree

AI デバッグ ツールが有効になっているときにテンキー「2」を押すと、Behavior Tree の情報の表示が切り替わります。

2_BehaviorTree.png

Behavior Tree のデバッグ情報は、Behavior Tree の情報 (左) とブラックボードの情報 (右) の 2 つに分類されます。Behavior Tree の情報には、使用されている Behavior Tree のクラス、およびツリーのどのブランチが現在実行されているかが (そのブランチ内のノードとともに) 表示されます。ブラックボードのデバッグ情報には、使用中の ブラックボード アセットとブラックボード キーおよびそれらの現在の値が表示されます (これは、キーの値に基づいて AI がアクションを実行しているかどうかを判断するのに役立ちます)。

Behavior Tree アセット内に、通常のブループリントと同様にブレークポイントを追加して、特定のノードに到達したときにスクリプトの実行を一時停止することもできます。ブレークポイントを追加することで、何が起きているのか作業中いつでも確認することができます。

EQS

AI デバッグ ツールが有効になっているときにテンキー「3」を押すと、アクティブな環境クエリに関する情報を表示できます。

EQS_Debugging_Image-1.png

ビジュアルロガーは参照可能な EQS データを記録します。詳しくはリンク先のページを参照してください。

EQS デバッグ情報には、使用されているジェネレータと一緒に実行されている現在の環境クエリが表示されます。上の例では、Simple Grid を使用して、敵の AI キャラクターに最も近いプレイヤーへの視線を取得するのに最適な場所を決定しています。この例では、(球体で表示された) グリッド上の点も表示されます。

緑色の球体はテストに合格した場所で、プレイヤーへの視線があります。青い球体はテストに合格しなかった場所で、 プレイヤーへの視線がありません。それぞれの球体は数値で重み付けされており、最も高い値のものは、「勝者」として指定され、AI が移動先として選択する場所となります。

「/」(スラッシュ) キーを押して、テストの結果を示す詳細な表の内訳を表示することもできます。

Detailed_TableBreakdown_Debug.png

上の例の画像では、右端の列の灰色の浮動小数点数は「cm」単位の距離で、緑色のものは (テストで指定されたものから) 正規化された値です。

AI デバッグ ツールに加えて、EQS でもゲームが動作していない間に特別なタイプのポーンを使用することによってクエリをデバッグすることができます。詳しくは「EQS Testing Pawn」を参照してください。

Perception

AI デバッグ ツールを有効にしてランタイム時にテンキーの「4」を押すと、Perception システムの情報が表示されます。

PerceptionDebug_01.png

上記では、視覚用に設定された AI キャラクターがいます (キャラクターの頭から描かれた緑色のデバッグ ラインで示されています)。下の画像では、AI キャラクターが (視覚の刺激元となる) プレイヤーを見ると、その場所は 最後にいた場所 として緑の球体で表されています。

PerceptionDebug_02.png

[Senses Config] の下の AI Perception コンポーネントで定義されている感覚はすべてデバッグ ウィンドウに表示されます。

PerceptionDebug_03.png

上記では、視覚 (緑色) と聴覚 (黄色) の両方の感覚をデバッグしています。

[Debug Color] プロパティを使用して、 AI Perception コンポーネントの感覚に使用されるデバッグ カラーを変更できます。

Select Skin
Light
Dark

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

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

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

フィードバックを送信