
デモ:テクスチャアトラス
Tutorial
intermediate
+0XP
60 mins
Unity Technologies

テクスチャアトラスは、テクスチャをまとめて、3D モバイルアプリケーションの貴重なリソースを節約してくれる、効率的な方法です。このデモでは、テクスチャアトラスを 3D シーンに適用することによるパフォーマンス上のメリットを明らかにしていきます。
1. テクスチャアトラスのバッチ処理
前のチュートリアルで、モバイルアプリケーションで複数のテクスチャを使用する際のアトラスの実装を学びました。このデモでは、静的オブジェクトでテクスチャアトラスを使用する場合と使用しない場合のパフォーマンスを比較するために、サンプルシーンをプロファイリングします。
2. 始める前に
サンプルデモを含むコースプロジェクトをまだダウンロードしていない場合は、こちらからダウンロードします。ポップアップが表示されたら、「Textures Demo」をクリックするか、Project ビューでサンプルシーンを開きます(「Assets」>「2 Textures」>「Scene」>「Scene 2」)。ダウンロードして開いたら、エディターの再生モードに入るか、モバイルデバイス向けにシーンをビルドして、プロファイラーを使用します。
3. 観察対象
ジオメトリのデモシーンと同じように塔が並んでおり、塔の列の間をプレイヤーカメラが移動します。このサンプルシーンでは、塔にテクスチャアトラスを使用するかしないかを切り替えることができます。静的オブジェクトに対してテクスチャアトラスを実装すると、GPU に対するドローコールが大幅に減ります。
テクスチャの実装を切り替えて、「Stats」ウィンドウで「Batches」と「Saved by batching」を比較します。また、「Profiler」ビューの「Rendering」セクションの「Batches graph」を比較します。これで、テクスチャアトラスを実装する場合としない場合を比べてどの程度節約できるかを確認できます。
また、「Frame Debugger」ビューで各フレームの描画方法を確認できます。フレームデバッガーを有効にするときに、シーンが一時停止し、上部の「Render Camera」ラベルの横にドローコール数が表示されます。一時停止中にテクスチャ実装をトグルして切り替えると、テクスチャアトラス使用時にドローコール数が増えているのを確認できます。
4. まとめ
このプロジェクトでは、テクスチャに保存できるディテールから、テクスチャのパフォーマンスを高めるための実装上の考慮事項までを取り上げて、テクスチャの柔軟性を紹介しました。ディテールを表示する対象がジオメトリでもライトでも、多くの場合、テクスチャに保存できる各種データで効率的にディテールを表示できます。次のプロジェクトでは、シェーダーとマテリアルにおいて、テクスチャなどのアセットがどのようにサポート、レンダリング、および最適化されるかについて学習します。