Unity でマルチパス シェーダーを作成していますが、特定の三角形でいくつかのパスをスキップしたいと考えています。パスの順序が同じではないため、複数のマテリアルでこれを行うことはできません。たとえば、4 つのパス ABCD がある場合、ABD を使用していくつかの三角形が描画され、ACD を使用していくつかの三角形が描画されます。すべての「A」パスを実行し、次にすべての「B」パスを実行する必要があります。したがって、単一のマテリアルと単一のシェーダー内で実行する必要があります。
これを行う最も効率的な方法は何ですか? オブジェクトを白黒画像にテクスチャ マップし、それをパスのアルファ値として使用することもできますが、これは最適とは言えません。