性能基準
おすすめの時間帯:
パフォーマンスはプレイヤーの直感的な感覚であるフレームレートに反映されますが、必要なフレームレートを達成するにはCPUの消費時間を制御する必要があり、ゲームの種類によって必要なフレームレートも異なります。おすすめの時間帯は以下の通りです。
推奨メモリ:
ゲームのクラッシュを回避する鍵は、PSS メモリ (実際の物理メモリの比例設定サイズ) のピーク値を制御することです。PSS メモリの大部分は、Reserved Total および Mono ヒープ メモリ内のリソース メモリにあります。Lua を使用するプロジェクトの場合は、Lua のメモリにも注意する必要があります。
ピーク PSS メモリがハードウェア メモリ全体の 0.5 ~ 0.6 倍未満に制御されている場合にのみ、クラッシュのリスクが低くなります。たとえば、2G デバイスの場合は PSS メモリを 1G 未満に制御する必要があり、3G デバイスの場合は 1.5G 未満に制御する必要があります。
ほとんどのプロジェクトでは、PSS メモリは予約合計よりも約 200MB ~ 300MB 大きいため、2G 機器の予約合計は 700MB 未満に制御する必要があり、3G 機器の予約合計は 1G 未満に制御する必要があります。
レンダリングモジュールの推奨値:
ゲームの画質に対する要件がますます高くなるにつれて、GPU の負荷に起因するパフォーマンスのボトルネックに遭遇するプロジェクトが増えています。GPU の負荷は、フレーム レート、解像度、三角形パッチの数、後処理によって影響を受けます。シェーダーの複雑さ、オーバードローやその他多くの影響を受けるため、グレードの異なるモデルに対応する調整を加えたり、グレードの異なるモデルをより詳細に区別したりして、上位モデルを実現する必要があります。ローエンドモデルでも滑らかさは保証できます。以下の表をテンプレートとして使用し、さまざまなゲームタイプのニーズをさらに調整することができ、緑色の値が達成できればより良いものになります。
推奨ツール
Unityプロファイラー
実機のデバッグとショートカット キー A (現在のフレームのデータをウィンドウに適合させる)、F (タイムラインで 1 つを選択し、適切なウィンドウにすばやくフォーカスする) を使用することをお勧めします。
プロファイラー モジュールは、必要に応じて追加または削除できます。フレームは、デフォルトで 300 フレームのデータを記録します。設定 -> 分析 -> プロファイラーで変更できます。最大値は 2000 です。これを超えると、プロファイルの消費量が増加します。
データのレンダリング、それに影響を与える大きな要因はカメラの視点の変更です
Unity フレーム デバッガー
- 現在のフレームのレンダリング プロセスを表示します。すべての描画呼び出しを一覧表示し、各呼び出しを順番にステップバイステップで実行できます。
- Draw Call の呼び出し数を確認し、頂点/インデックスの数を通じてシーンのレンダリング コストを間接的に測定します。
- バッチが適切に結合されているかどうかを確認し、結合されない理由を確認することもできます。
- シェーダ プロパティにアクセスして、マテリアルとシェーダに関する詳細情報を取得したり、オブジェクトで使用されるデータへの参照を取得したりすることもできます。
マリオフラインコンパイラ
ドキュメント – Arm 開発者の 公式ドキュメント
a. このツールは主にシェーダーの複雑さを計算し、段階的な高、中、低の値に基づいてシェーダーが複雑すぎるかどうかを判断するために使用されます。
b.これは、GPU シェーダーの静的分析を提供するコマンド ライン ツールです。これは主に、シェーダ構文の検証、パフォーマンスのボトルネックの特定、および変更によるパフォーマンスへの影響の測定に使用できます。
シェーダーを選択してファイルにコンパイルし、フラグメント シェーダーまたは頂点シェーダー コードを選択し、mali コマンド ラインを使用して分析します。
c. Unity エディターから FRAGMENT Shader を取得します。
そのレポートから、いくつかの最適化に関する提案を得ることができます。
- if ステートメントと Discard ステートメントは使用しないようにしてください
- 関連する計算量を削減し、逆三角関数などの複雑な関数の使用を削減します。
- 型変換を避ける
- 32 ビットの高精度浮動小数点数の使用を減らしますが、332 ビットの位置と深さを使用するのが最善です。
- こぼれなどを引き起こさないようにしてください。
Xcode フレームデバッガー
メタル モデル マシン (つまり iPhone) のテストのみをサポートします。編集スキームで GPU をメタルとして選択すると、対応するフレームの情報を傍受できます。Unity Frame Debugger に似ていますが、より完全な機能を備えています。
オンにした後、実マシンで実行しているときに、以下のツールバーを使用してインターセプトします。