シーンの深度マップを描画しようとしています。ここで、次のような HLSL ファイルを作成しました: http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series3/Shadow_map.php そして、すべてうまくいきました。でも!各ピクセルの正確な値を知りたいので、通常のレンダー ターゲットで描画する代わりに、次のように Texture2D である新しいレンダー ターゲットを作成しました: http://www.riemers.net/eng/Tutorials/XNA /Csharp/Series3/Render_to_texture.php そして、スプライトバッチを使用して描画しました。
それで!画像を表示すると、最初の画像、つまり画面に直接描画する画像が次の出力を返します。
そして、スプライトを使用してテクスチャに描画してから画面に描画するものは、次のようになります。
2 番目のキャプチャでは、明らかに身体の後ろにある身体の右腕が、オーバーラップ領域に身体が存在しないかのように描かれていることに注目してください。
前の頂点が最初にテクスチャに描画され、次に遠い頂点が近くの頂点を上書きして、観察された画像になるため、順序付けの問題だと思います。
ご意見をいただければ幸いです。