Skip to content

計測と最適化 ​

最初に条件を揃える ​

同じScene、Camera、解像度、描画設定、FPS上限で比較します。ShaderやTextureの読込中と完了後を分け、別のゲームが同じGPUを使用していない状態で確認します。

EditorではGameViewとSceneViewの両方が表示されていると、複数の視点の描画が必要です。非表示のView、CameraのRenderTexture出力、モデルPreviewも別の負荷として考えます。

Consoleの時間 ​

表示読み方
描画CPU・待機除外CPUが描画の準備・命令作成などに使う時間
GPU完了待ちCPUが、GPUが使っているframe資源を再利用できるまで待った時間
各GPU PassGPU timestampで計測した各区間
合計・frame計測区間やViewの範囲を確認して比較する

CPUとGPUは並行して動くので、それぞれのmsを単純に足してFPSへ換算しません。各Passの合計と全体が違う場合、計測されていない準備・同期・転送や、測定範囲の違いを確認します。--は0msではなく有効な計測値がない状態です。

重い項目を分ける ​

  1. 解像度を下げてGPU時間が変わるか確認します。
  2. 影、反射、AO、Bloomなどを1つずつ切り替えます。
  3. 表示中のView数とCamera出力数を減らします。
  4. Particleの最大数・Trail点数、Lightの数と範囲を確認します。
  5. 大きいTexture、SubMeshとMaterialの数を確認します。

Mesh ShaderやLODを変えた場合は、速度だけでなく描画の欠け・法線・Materialも比較してください。軽くするために表示そのものを失っていないか確認します。

Tool ​

「ツール → デバッグ → パフォーマンスチェック」は一定条件で描画設定を比較するときに使います。Scriptの負荷は「スクリプトプロファイラー」で確認します。

C#で細かく計測する場合はScriptProfilerのScopeを使用できます。Scopeの寿命と計測したい区間を一致させてください。

GPU使用率と発熱 ​

GPUが高使用率なのは、処理を与え続けている状態でもあります。FPS上限なしと60FPS固定を同じ条件と考えないでください。時間経過で遅くなる場合は、Sceneや資源の増加だけでなく温度・クロック・使用メモリも確認します。

パフォーマンスチェックの設定 · スクリプトプロファイラー

現行版マニュアル · 8ea58ba2 · 2026-10-28確認