ライトバッチ処理デバッガーを使用して、Unity がシーン内のターゲットのソートレイヤーに従って 2D ライトと Shadow Caster をどのようにバッチ処理するかを視覚化します。
Unity がソートレイヤーをバッチ処理するには、レイヤーは以下の条件を満たす必要があります。
デバッガーは隣接するバッチを比較して、各ソートレイヤーをターゲットとするライトまたは Shadow Caster をハイライトし、Unity がソートレイヤーをバッチ処理できるように追加または削除する必要があるライトまたは Shadow Caster を表示します。
Unity がプロジェクトで 2D ライトをバッチ処理する方法を Light Batching Debugger ウィンドウで確認できます。
以下の例は、Unity が異なる条件でライトと Shadow Caster をバッチ処理する方法を示しています。各例は、BG とデフォルトという名前の 2 つのソートレイヤーと、A と B という名前の 2 つのライトで構成されています。
条件:
結果同じレイヤーをターゲットとすることから Unity は両方のライトを合わせてバッチ処理します。
条件:
結果両方のライトが異なるソートレイヤーをターゲットとしているため、Unity はレイヤーをバッチ処理しません。
条件:
結果Unity は、ライトと Shadow Caster のセットの両方が同じレイヤーをターゲットにするときにレイヤーをバッチ処理します。
条件: * ライト A と B は、BG とデフォルトの両方をターゲットにします。 * シャドウはライト A に対してのみ有効であり、Shadow Caster は BG とデフォルトの両方をターゲットにします。
結果Unity は、Shadow Caster が両方のソートレイヤーをターゲットにしていることからレイヤーをバッチ処理するため、両方のレイヤーが同じシャドウ設定を共有して、ライトテクスチャが両方のレイヤーで同じになります。
条件:
結果Shadow Caster は一方のレイヤーのみをターゲットにし、もう一方のレイヤーはターゲットにしないため、Unity はレイヤーをバッチ処理しません。そのため、両方のレイヤーのライトテクスチャは同じではなく、バッチ処理できません。
