Tilemap Renderer コンポーネントはシーンの タイルマップ をレンダリングします。Unity は、デフォルトで Tilemap Renderer (タイルマップレンダラー) がアタッチされた Tilemap を作成します。タイルマップレンダラーでは以下のことが可能です。
レンダーモードは、レンダリング時のタイルマップスプライトのソーティングに影響します。
Chunk モードは Tilemap Renderer のデフォルトレンダリングモードです。
Chunk モード に設定すると、Tilemap Renderer はタイルマップのスプライトをまとめて処理し、レンダリングします。それらは、2D Transparent Queue でソートされる場合、1 つのソートアイテムとして扱われます。これによりドローコールの回数が減少しますが、他のレンダラーはタイルマップのどの部分間にもレンダリングできなくなり、他のレンダリングされたスプライトをタイルマップスプライトと織り交ぜることができなくなります。
Chunk モード では、タイルマップレンダラーは複数のテクスチャから個別にタイルをソートすることができず、タイルスプライトのレンダリングに矛盾が発生することがあります (下の例 を参照)。
この問題を解決するには、タイルマップを構成するすべての個々のスプライトを 1 つの スプライトアトラス にまとめます。これを行うには、以下の通りです。
Assets メニューから スプライトアトラス を作成します (Asset > Create > Sprite Atlas)。
スプライトをスプライトアトラスに追加するには、アトラスの Inspector ウィンドウの Objects for Packing リストにドラッグします。
Pack Preview をクリックします。 Unity は、再生モードの間にスプライトをスプライトアトラスにまとめ、正しくソートしレンダリングします。これは、再生モードのエディターでのみ表示されます。
Individual モード では、タイルマップレンダラーは、スプライトレンダラー や メッシュレンダラー など、シーン内の他のレンダラーを考慮して、タイルマップのスプライトをソートしレンダリングします。他のレンダラーがタイルマップ上のスプライトとオブジェクトと相互作用する場合は、このモードを使用します。
このモードでは、タイルマップレンダラーは、タイルマップ上の位置と設定されたソートプロパティに基づいてスプライトをソートします。例えば、このモードで、キャラクタースプライトを障害物スプライトの間に位置することができます (下の例を参照)。
同じ例を Chunk モード を使用すると、キャラクターのスプライトが地面のスプライトの裏に隠れることがあります。
各スプライトを個別にタイルマップにレンダリングする際に Idividual モード を使用すると、オーバーヘッドが増えるためパフォーマンスが低下する場合があります。
Isometric Z as Y タイルマップでタイルスプライトを正しくソートしレンダリングするには、Transparency Sort Axis を Custom Axis に設定する必要があります。そのためには、以下を行います。
Transparency Sort Axis 設定の詳細は、アイソメトリックタイルマップの作成 を参照してください。