Unreal Insights の概要

Unreal Insights の概要

Choose your operating system:

Windows

macOS

Linux

Unreal Insights は、プロジェクトにおいて最適化が必要な領域を特定します。アプリケーションからのイベントを高いデータレートでキャプチャする機能を提供するテレメトリ キャプチャおよび分析スイートです。

Unreal Insights の主要なコンポーネントは、トレース イベント、アプリケーションからのトレースを記録および保存する Unreal Trace Server、およびデータを分析および視覚化する UnrealInsights で構成されます。

insights-diagram

保存されたトレース セッションは自己記述型で下位互換性です。「.utrace」ファイルに保存されています。生成されたコンパニオン データは、トレース ファイルの横の「.ucache」ファイルに保存されます。

Unreal Insights を設定する

Unreal Insights をビルドするとき、複数の方法を利用することができます。

方法 1:エクスプローラーから Unreal Insights を起動する

Engine\Binaries\Win64\UnrealInsights.exe」へ移動して、エンジンに Unreal Insights のビルド済みコピーが既にあるかどうかを確認します。

unreal-insights-executable-in-binaries-folder

方法 2:Visual Studio からビルドする

Solution Explorer Program のディレクトリから Unreal Insights をビルドすることができます。

build-from-visual-studio

方法 3:コマンド プロンプトからビルドする

[Start (スタート)] > [Command Prompt (コマンドプロンプト)] へ移動して、コマンド ディレクトリから Unreal Insights をビルドします。

    cd C:\MyEngineInstallLocation\

    Engine\Build\BatchFiles\RunUBT.bat UnrealInsights Win64 Development

方法 4:エディタからビルドする

[Tools] >[Unreal Insights] > [Run Unreal Insights] へ移動して Unreal Editor から Unreal Insights を開始します。Insights は自動的にコンパイルを試みます。

トレースを実行してプロジェクト データのプロファイルを作成する場合、Unreal Engine のビルドとオペレーティング システムに応じて複数のワークフロー オプションを利用できます。その他のドキュメントは、トレース と「トレースのクイックスタート ガイド」を参照してください。

トレース

トレース (Trace) は、実行中のプロセスからインストルメンテーション イベントをトレースするための構造化されたログ フレームワークです。

Unreal Trace サーバー は単一のサーバー インスタンスとしてバックグラウンドで実行され、複数のプロジェクトまたはブランチ間で共有することができます。これはユーザー インターフェースを持たない軽量のプログラムであり、パフォーマンスへの影響は最小限に抑えられます。「Engine/Binaries/Win64」ディレクトリ フォルダに保存されているサーバー プロセス実行可能ファイル「UnrealTraceServer.exe」によってトレースが起動します。

insights-directory-displayed-in-file-explorer

トレース サーバーには 2 つの機能があります。

  • Trace Recorder は、ポート 1981 で着信トレース接続をリッスンし、ライブ トレース ストリームを記録します。

  • Trace Store stores は、記録されたトレースをファイルとして「C:/Users/<user>/AppData/Local/UnrealEngine/Common/UnrealTrace/Store/001/」のようなパスに保存します。このフォルダの変更を監視し、使用可能なトレースのリストを Unreal Insights UI に公開します。

詳細については、「トレース」、「トレーシングのクイックスタート ガイド」、「トレーシングのデベロッパー ガイド」を参照してください。

Unreal Insights セッション ブラウザ

Unreal Insights を起動すると Unreal Insight セッション ブラウザ が開きます。このブラウザは [Trace Store (トレース ストア)] パネル (1)、トレース セッション が保存されているディレクトリ (2)、[Connection (接続)] メニュー パネル (3) で構成されています。

connection-menu-window

この [Connection] メニュー (4) には [Trace Recorder IP address (トレース レコーダー IP アドレス)] (5)、Running Instance IP address (実行中インスタンスの IP アドレス)** (6)、接続時に特定のトレースを有効にする Initial channel (7) が 含まれています。

session-browser-view

ツールを起動すると、最初に Unreal Insights のウィンドウが開きます。ウィンドウの上部セクションには、[Trace Sessions (トレースセッション)] というラベルが付いており、解析用にロードできるすべての記録済みセッションのリストが表示されます。これらは Trace Store ディレクトリ にある .utrace ファイルに対応します。これらのトレース セッションのいずれかをダブルクリックするか、トレース セッションを選択して [Open Trace (トレースを開く)] をクリックします。または、[Open Trace] ドロップダウンの矢印を使用して、他の場所で .utrace ファイルを検索することもできます。

それぞれのトレース ファイルの解析をすぐに開始するには、.utrace ファイルをエクスプローラーから Unreal Insights のウィンドウにドラッグアンドドロップします。

ライブ トレース セッションがツールに接続されている場合は、それがリストにも表示されます。ライブ セッションのステータス列には「LIVE」と表示されて解析中にリアルタイムで更新されますが、それ以外の点では、事前に記録されたセッションと同じです。このツールでは複数のセッションを同時に接続することができ、データの受信に伴ってすべてのセッションのデータが自動的に記録されます。これらのセッションは、事前に記録されたセッションと同様に、リストからロードすることでリアルタイムで解析できます。

Timing Insights ウィンドウ

Timing Insights ウィンドウはパフォーマンス データを収集します。CPU トラックと GPU トラックとともに、異なるトラックのフレームごとのパフォーマンス データが表示されます。タイミング ビューツールバー が新たに追加されて、[Tracks (トラック)] ドロップダウン メニューが複数のメニューに分割され、プロジェクトのさまざまなタスクにかかる時間を視覚化して表示できるようになりました。

時間ブロックを選択して集計を表示したり、データをソートまたは分類したり、ログ出力を確認したりすることができます。また、各パネルの表示/非表示を切り替えることができます。

[Timing Insights] ウィンドウは、[Frames (フレーム)] パネル (1)、[Timing (タイミング)] パネル (2)、[Log (ログ)] パネル (3)、[Timers (タイマー)] タブと [Counters (カウンター)] タブ (4)、[Callers (呼び出し元)] パネルと [Callees (呼び出し先)] パネル (5) で構成されています。

詳細は「Timing Insights」を参照してください。

Memory Insights

Memory Insights は、プロジェクトでのメモリ使用量の調査とコール スタックのトレースを可能にする新しいコンポーネントです。

このランタイム コンポーネントでは、ランタイム時に発生するすべての割り当て、再割り当て、または解放イベントのイベントをトレースし、解析時にそのメモリ使用パターンを再構築します。

その設定、トレース、クエリ、データの並び替えなどの方法については、「Memory Insights」のドキュメントを参照してください。v

Networking Insights

Unreal Insights には、ネットワーク トラフィックの解析、最適化、デバッグを行う Networking Insights が含まれています。

詳細については、「Networking Insights の概要」を参照してください。

リファレンス

マクロとコマンド オプションでプロジェクト出力をカスタマイズすることで、Unreal Insights と一緒にシッピングされた多くの機能を活用できます。

その他のドキュメントは「リファレンス」を参照してください。

Slate Insights

Slate Insights によって Unreal Insights の機能が拡張され、特定のスレートおよび UMG の更新の原因を明らかにするためのツールを通じて、デベロッパーによる UI パフォーマンス向上を支援します。

その他のドキュメントは「Slate Insights」を参照してください。