3

XNAでの遅延レンダリングに関するいくつかのチュートリアル(Catalin ZimaTheCansin )を読みました。それらはすべて、モデルのレンダリングに遅延レンダリングパイプラインを使用しているようです。これは素晴らしいですが、通常のマップと鏡面反射マップのみを扱います。

私の考えが正しければ、たとえばグロー効果のあるモデルをレンダリングしたいが、グローシェーダーがある場合、遅延レンダリングパイプラインはこのシェーダーについて認識しませんか?

上記の質問が正しければ、遅延レンダリングパイプラインでグローを使用してモデルをレンダリングしてから、グローシェーダーを使用して再レンダリングする必要がありますか?

4

1 に答える 1

3

本当にたくさんの異なるアプローチがあります。パイプラインにマテリアルマスクパスを含めることをお勧めします。例:シーンでレンダリングするサーフェスのタイプごとに、単色のターゲットをレンダリングします。このマスクターゲットを使用して、最終的な遅延照明パスで分岐操作を実行し、さまざまなマテリアルのサーフェス計算を行います(たとえば、フォンシェーディングの場合は純赤、マットサーフェスの場合は純青など)。拡散反射光、法線、鏡面反射光のgbufferパスは通常どおり使用します。

特にグロー効果の場合は、マスクアプローチを使用して、そのターゲットを後処理ステップに進め、マスクを使用してグローを適用するオブジェクトを決定し、フルスクリーンのぼかし/グローを実行することもできます。

于 2011-07-07T12:17:25.023 に答える