あなたは、同じプログラム内の複数のピクセル(フラグメント)シェーダを持つことができますか?
-
23-09-2019 - |
質問
私は2つのピクセルシェーダを持っていると思います。最初に一つのことをやって、その後、次の何かをやって。このことは可能ですか、私は1つのシェーダにすべてをパックする必要がありますか?
解決
あなたは、例えば、これを行う行うことができます様々なシェーダオブジェクトに実装されている機能にメインエントリポイントからの関数呼び出しを実行してます。
main() {
callToShaderObject1()
callToShaderObject2()
}
これらのcallToShaderObject機能のそれぞれが異なるシェーダオブジェクトに住むことができますが、すべてのオブジェクトは、それが使用することができます前に、同じプログラムに添付してリンクする必要があります。
他のヒント
彼らは同時に実行することはできませんが、別のジオメトリの異なるシェーダを使用して、または別のシェーダを使用して複数のパスでレンダリングするために無料です。
所属していません StackOverflow