問題タブ [blend-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
glsl - 「データ キャストケード」として機能するカスタム ブレンド モードを OpenGL または DirectX で作成することは可能ですか? 深度情報を保存しようとしています
ゲームのレンダリング中にできるだけ多くの深度情報を保存して、追加のデータを使用してより高度なさまざまな画面空間効果を実行できるようにしています。このブレンド モードでは、深さの並べ替えを維持しながら、通常のレンダリング中に最大 4 つの深さチャネルを保存できます。
ブレンド モードは、次の sudo コードのように機能します。
これの実装は次のようになります。
ブレンド モードはフラグメント シェーダーのようにコードで直接変更できないため、既存の技術を使用してブレンド モードでこのようなことが実現できないか興味があります。何千ものオブジェクトがレンダリングされる可能性があるため、マルチ シェーダー パスを実行するのは非現実的です。現在のフレーム バッファーをコピーして、オブジェクトをレンダリングするたびにシェーダーに戻す必要があります。