スパーステクスチャ
CullingGroup API

グラフィックスハードウェアの性能とエミュレーション

シーンを最終的にレンダリングするグラフィックスハードウェアは シェーダー と呼ばれる専門のグラフィックス言語で制御されます。ハードウェアの性能は時間とともに段階的に向上してきており、各段階で導入された一般的なひとまとまりの機能が シェーダーモデル として知られています。より長いシェーダープログラムやより強力な分岐命令、その他の機能のために段階的にシェーダーモデルのサポートが追加されていき、これらの改善はゲームのグラフィックスを向上させてきました。

Unity は、特定の GPU またはグラフィックス API で実行されているときのゲームの様子を簡単に把握するために、いくつかのシェーダーモデルとグラフィックス API の制限のエミュレーションをサポートしています。エディター内のエミュレーションはおおよそのものであるため、ターゲットとするハードウェア上で実際にゲームビルドを実行することが推奨されます。

グラフィックスエミュレーションレベルを選択するには、 Edit > Graphics Emulation の順に選択します。使用可能なオプションは、Build Settings で現在ターゲットとしているプラットフォームによって異なります。 No Emulation を選択すると、ハードウェアのすべての機能に戻ります。 開発用コンピュータが特定のシェーダーモデルをサポートしない場合、メニューで選んだ項目は無効になります。

シェーダーモデル 4 (スタンドアロン、ユニバーサル Windows プラットフォーム)

  • DirectX 10 機能セット (2007–2009 の間に作られた PC GPU) をエミュレーションします。
  • コンピュートシェーダー と関連した機能 (コンピュートバッファー、ランダム書き込みテクスチャ)、スパーステクスチャ、テッセレーションシェーダーをオフにします。

シェーダーモデル 3 (スタンドアロンプラットフォーム)

  • DirectX 9 SM3.0 機能セット (2004–2006 の間に作られた PC GPU) をエミュレーションします。
  • シェーダーモデル 4 エミュレーションでオフにした機能に加え、 ドローコールインスタンシングテクスチャ配列、ジオメトリシェーダーのサポートもオフにします。 これは、最大 4 つのレンダーターゲットを同時に実行し、1 つのシェーダーで最大 16 個のテクスチャを使用します。

シェーダーモデル 2 (スタンドアロンプラットフォーム)

OpenGL ES 3.0 (Android プラットフォーム)

  • モバイル OpenGL ES 3.0 機能セットをエミュレーションします。
  • コンピュートシェーダ- と関連機能 (コンピュートバッファ、ランダム書き込みテクスチャ)、スパーステクスチャ、テッセレーションシェイダー、ジオメトリシェーダーのサポートをオフにします。最大 4 つのレンダーターゲットを同時に適用し、1 つのシェーダーで使用できるテクスチャは最大 16 個です。 最大許容テクスチャサイズは 4096 に設定され、キューブマップの最大サイズは 2048 に設定されます。リアルタイムのソフトシャドウは無効になります。

Metal(iOS, tvOSプラットフォーム)

  • モバイルの Metal MTL 機能セットをエミュレートします。
  • GLES3.0 エミュレーションと同様の制限が適用されます。ただし、最大キューブマップサイズは 4096 に設定されます。

OpenGL ES 2.0 (Android プラットフォーム)

  • モバイルの OpenGL ES 2.0 をエミュレートします。
  • GLES3.0 で無効にした機能に加え、ドローコールインスタンシング, テクスチャ配列, 3D テクスチャ、複数レンダーターゲットも無効にします。1 つのシェーダーで使用できるテクスチャは最大 8 個です。 キューブマップの最大サイズは 1024 に設定されます。

ウェブ1andウェブ2(ウェブプラットフォーム)

  • 標準的な WebGL グラフィックスの制限をエミュレートします。
  • 前出の GLES2.0 と GLES3.0 エミュレーションレベルにとても似ていますが、サポートされるテクスチャサイズが大きいこと (通常のテクスチャは 8192、キューブマップは 4096) と、1 つのシェーダーで使用できるテクスチャが最大 16 個であることが異なります。

シェーダーモデル 2 - DX11 FL9.3 (ユニバーサル Windows プラットフォーム)

  • 標準的な Windows Phone グラフィックス機能セットをエミュレートします。
  • Shader Model 2 エミュレーションととても似ていますが、複数レンダーターゲットと個別アルファブレンディングを無効にします。

• 2017–05–16 編集レビュー 無しに修正されたページ - ページのフィードバックを残す

スパーステクスチャ
CullingGroup API