現在、DirectX9で書いたプログラムで、Zバッファの値を取得したいと思っています。
D3DFMT_D24S8で作成したテクスチャのサーフェスをSetDepthStencilSurfaceで設定後、各種描画を行い
そのテクスチャをSetTextureで設定してシェーダーからZ値を参照したいのですがどうやればいいのでしょうか?
sampler tex0 : register(s0);
tex2D( tex0, In.Tex ).r;
などで参照すると全てClearで初期化した値(1.0)になってるようでした。
正しい値を取得したいのですがやり方が分かる方、教えて下さい。
DirectX9のZバッファをSetTextureに設定して値を取得したい
Re: DirectX9のZバッファをSetTextureに設定して値を取得したい
どのように解決したかを書いてください。
フォーラムルールより
フォーラムルールより
トピックを立て、解決した場合は「解決しました」とだけ書かず、どうやって解決したか他の人に分かるように書いて からトピックを終了して下さい。
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: DirectX9のZバッファをSetTextureに設定して値を取得したい
DirectX9では深度バッファの値を簡単に参照できない為
別途バッファを用意してオブジェクトを描画する時に
その都度Z値を自力で保存したものを使いました。
ただこれが一番良い方法かはわかりません。
一応、望んだ動作にはなっていますが。
別途バッファを用意してオブジェクトを描画する時に
その都度Z値を自力で保存したものを使いました。
ただこれが一番良い方法かはわかりません。
一応、望んだ動作にはなっていますが。