プロファイラーモジュールの作成
Build custom Profiler modules to display performance data and visualizations for your project's specific needs.
読み終わるまでの所要時間 9 分最終更新 1ヶ月前
プロファイラーモジュールは、システムのパフォーマンスデータを Profiler ウィンドウに表示します。
独自のプロファイラーモジュールは、以下のいずれかの方法で作成できます。
カスタムモジュールは、コードで指定したカウンターを Profiler ウィンドウのチャートビュー (A) に表示し、カウンターはモジュールの詳細パネル (B) にリストとして表示されます。

プロファイラーモジュールエディターを使用したプロファイラーモジュールの作成
Unity のビルトイン プロファイラーモジュールエディター を使用して、独自のプロファイラーモジュールを作成することができます。プロファイラーモジュールでデータを収集するには、モジュールが追跡するためのカウンターを少なくとも 1 つ加える必要があります。Unity のビルトインカウンターを加えることも、 API を使用して 独自のカウンターを作成 してモジュールに加えることもできます。利用可能なカウンターのリストは、Available Counters ペインに表示されます。
ProfilerCounter独自のモジュールを作成するには、以下を行います。
- Profiler ウィンドウを開きます (Window > Analysis > Profiler)。
- Profiler Modules ドロップダウンを選択し、歯車アイコンを選択します。プロファイラーモジュールエディターが開きます。
- ウィンドウの左下にある Add ボタンを選択します。Unity は、New Profiler Module という名前の新しいプロファイラーモジュールをリストに追加します。モジュールの名前を変更するには、テキストフィールドをクリックして、キーボードで名前を設定します。
- モジュールに表示するカウンターを Available Counters パネルから選択し、ダブルクリックしてモジュールに追加します。複数のカウンターを選択するには、Shift キーを押しながらクリックして範囲を選択するか、Ctrl (macOS では Command) キーを押しながら 1 つずつカウンターを選択します。
- カウンターを並べ替えるには、カウンターをドラッグします。1 つのモジュールに追加できるカウンターの数は最大 10 個です。
- Profiler Module Editor ウィンドウの右下にある Save Changes ボタンを選択します。Unity がウィンドウを閉じ、Profiler ウィンドウに新しいモジュールが表示されます。
**重要:**Profiler ウィンドウにデータをロードしないと、作成したカウンターは、プロファイラーモジュールエディターをロードしたときに Available Counters ペインに表示されません。カスタムカウンターを表示するには、作成したカウンターを含むデータをプロファイラーで キャプチャまたはロード して、プロファイラーモジュールエディターを再度開きます。

ユーザーカウンターのリストを表示するプロファイラーモジュールエディター
プロファイラーモジュールをコードで作成
プロファイラーモジュールをコードで作成するには、新しい スクリプトを作成し、表示するカウンター、名前、アイコンなどのモジュールのプロパティを定義する必要があります。
ProfilerModuleプロファイラーモジュールを定義するには、スクリプトで以下のことを行う必要があります。
-
プロジェクトまたはパッケージのから派生したクラスを定義します。以下の例では、クラス名を
ProfilerModuleとします。TankEffectsProfilerModulepublic class TankEffectsProfilerModule : ProfilerModule -
このクラスに属性を割り当て、属性の引数にモジュールの表示名を指定します。以下の例では、表示名を "Tank Effects" としています。
[ProfilerModuleMetadata][ProfilerModuleMetadata("Tank Effects")] -
パラメーターを持たないコンストラクターを実装し、チャートカウンター説明のリストを基本コンストラクターに渡します。以下の例では、パラメーターを持たないコンストラクターは、チャートカウンター説明のリストは
TankEffectsProfilerModule()、基本コンストラクターはk_Countersとなっています。basestatic readonly ProfilerCounterDescriptor[] k_Counters = new ProfilerCounterDescriptor[]{ new ProfilerCounterDescriptor(GameStatistics.TankTrailParticleCountName, GameStatistics.TanksCategory), new ProfilerCounterDescriptor(GameStatistics.ShellExplosionParticleCountName, GameStatistics.TanksCategory), new ProfilerCounterDescriptor(GameStatistics.TankExplosionParticleCountName, GameStatistics.TanksCategory),}; public TankEffectsProfilerModule() : base(k_Counters) { }
Profiler ウィンドウにカスタムプロファイルモジュールを表示
独自のプロファイラーモジュールを定義すると、Profiler ウィンドウはそれを自動的に検出します。プロファイラーモジュールのデータを Profiler ウィンドウで表示するには、以下を行います。
- Profiler をアプリケーションに接続します。詳細については、アプリケーションのプロファイル を参照してください。
- アプリケーションを実行します。
アプリケーションが再生モードのときにプロファイラーを実行することもできます。しかし、再生モードでアプリケーションをプロファイリングすると、プロファイラーは、ハードウェアデバイス上でアプリケーションをビルドする場合のアプリケーションの実行を表すものではないデータを表示します。