

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Unreal Engine のパフォーマンスのプロファイリング
<a name="profiling-ue"></a>

 このセクションでは、Unreal Engine ゲームまたはアプリケーションのパフォーマンスを分析する方法について説明します。これにより、最適化するエリアの を特定し、Amazon GameLift Streams でのストリーミングをスムーズにすることができます。

 Unreal Engine のコンソールとその組み込みの統計コマンドを使用して、ゲームのパフォーマンスの詳細を確認できます。コンソールには、出荷不可能なビルドまたは**エディタ**でアクセスできます。出荷不可能なビルドとは、デバッグまたは開発設定を使用して構築されたプロジェクトを指します。

**コンソールにアクセスするには**

 出荷不可能なビルドおよび[エディタで再生](https://dev.epicgames.com/documentation/en-us/unreal-engine/playing-and-simulating-in-unreal-engine#pieconsole)モードでは、チルダ (**\~**) キーを押してコンソールを開きます。チルドキーをダブルクリックしてコンソールを展開します。

コンソールを使用するためのヒントをいくつか紹介します。
+ キーワードを入力して、そのキーワードを含むすべての可能なコマンドを一覧表示します。矢印キーを使用してリストをスクロールします。
+ 矢印キーまたはページアップキーとページダウンキーを使用して履歴をスクロールします。
+ ログはプロジェクトの `Saved/Logs` ディレクトリの`.txt`ファイルに保存されます。

**ゲームのパフォーマンスをプロファイリングするには**

1.  まず、 コマンド`stat fps`と `stat unit` コマンドを実行します。これにより、ゲームがパフォーマンスに苦労する場所の概要がわかります。
   + `stat fps`: 1 秒あたりの現在のフレームを表示します。
   +  `stat unit`: フレームを複数のサブセクションに分割します。
     +  **フレーム**: フレームのシミュレーションが開始されてからフレームの表示が画面に表示されるまでの合計ウォールクロック時間。
     +  **ゲーム**: フレームあたりのゲームシミュレーションスレッドにかかる合計 CPU 時間。
     +  **描画**: レンダリングスレッドがシーンを GPU のコマンドに変換して GPU に送信する合計 CPU 時間。
     +  **GPU**: GPU がすべてのコマンドを処理する合計時間。
     +  **Draws**: フレームに送信された描画の合計数。
     +  **プリム**: 描画された三角形の総数。

1.  ゲームをプレイして、パフォーマンスが低い領域を特定します。これは、**ゲーム**、**描画**、または **GPU** で FPS が減り、時間が長くなったことを示します。

1.  を実行して`stat game`、さまざまなゲームプレイグループの所要時間を確認します。

1.  AI、アニメーション、物理、ゲームプレイ、スクリプティングなどの特定のゲームプレイ要因の統計を絞り込みます。ここにいくつか例を挙げます。
   + `stat ai`: AI の動作を計算する時間。
   + `stat anim`: スキンメッシュを計算する時間。
   + `stat physics`: 物理シミュレーションを計算する時間。

1.  を実行して`stat drawcount`、どのレンダリング領域が最も描画を生成するかを確認します。このリストには、 が出力するレンダーパスと、各フレームに出力されるドローの数が表示されます。次のステップで GPU 統計を分析することで、詳細情報を取得できます。

1.  を実行して`stat gpu`、GPU 時間を最も多く消費するレンダータイプを確認します。

1.  レンダリングタイプを照明、シャドウ、内包部 (照明）、髪、後処理など、幅広いグループに絞り込みます。一般的な例をいくつか示します。
   +  `stat lightrendering`: ライトとシャドウをレンダリングする GPU 時間。
   +  `stat shadowrendering`: さまざまなシャドウを更新する GPU 時間。
   +  `stat scenerendering`: シーンをレンダリングする GPU 時間。

 このセクションでは、使用可能なコマンドのサブセットのみについて説明します。ゲームの機能に応じて、アセットストリーミング、仮想テクスチャリング、CPU タスクワークロード分散、スレッディング、サウンド、パーティクルなどの分野の統計を調べます。詳細については、[「Stat コマンド](https://dev.epicgames.com/documentation/en-us/unreal-engine/stat-commands-in-unreal-engine)」を参照してください。