どのシーンでも、SRP バッチャーと互換性のあるゲームオブジェクトと互換性のないゲームオブジェクトがあります。互換性のあるゲームオブジェクトは SRP バッチャーコードパスを使い、互換性のないゲームオブジェクトは標準の SRP コードパスを使います。詳細については、SRP バッチャーの仕組み を参照してください。
SRP バッチャーのコードパスに対応するには、ゲームオブジェクトは以下の要件を満たす必要がある。
ユニバーサルレンダーパイプライン (URP) と HD レンダーパイプライン (HDRP) のすべての Lit および Unlit シェーダーはこの要件を満たします (これらのシェーダーのパーティクルバージョンを除く)。
カスタムシェーダーが SRP バッチャーと互換性を持つためには、以下の要件を満たす必要があります。
UnityPerDraw という名前の 1 つの定数バッファで宣言する必要があります。例えば、unity_ObjectToWorld や unity_SHAr などです。UnityPerMaterial という名前の 1 つの定数バッファで宣言する必要があります。シェーダーの互換性の状況は Inspector パネルで確認できます。