電子書籍の厳選無料作品が豊富!

今現在、DirectX9とVC2005のC++を使用してソフトを製作しています。

D3DXCreateTextureFromFileにてXファイルを読み込み、描画をしているのですが
なぜか、テクスチャが貼られたメッシュに黒い筋が入り激しくチラつきます。
ただ、これも常にというワケではなく、カメラが動いた時にチラつきます。
また、例えばカメラ移動中にチラついた状態でカメラが止まっても、
メッシュに黒い筋が入ったままだったりということもあります。
状態としては以下の様な感じです。
blog81.fc2.com/e/evom/file/caps.jpg

色々と調べてみて、フィルターを設定したりしてみたのですが状況は改善されず、
何が原因なのかもちょっと検討が付かないです・・・。

どなたか原因がお分かりになる方、ご教授の程よろしくお願い致します。

A 回答 (2件)

>D3DTSS_MODULATE


D3DTOP_MODULATEのこと。。。かな??

この回答への補足

間違いだらけで本当お恥ずかしい限りです…大変申し訳ございません。
仰る通り、D3DTOP_MODULATEです。

補足日時:2008/02/15 12:21
    • good
    • 0

D3DXCreateTextureFromFile()



の関数はXファイルを読み込むものではありません。
D3DXLoadMeshFromX()

ですよね。w

他のXファイルでも試してください。
そっちでも変なら読み込み部分&描画部分のソースをお見せください。

この回答への補足

そうでした(笑) お恥ずかしい限りで…

とりあえず色々なXファイルでもチラつくので、試行錯誤の結果、
lpD3DDEV->SetTextureStageState(0, D3DTSS_COLOROP, D3DTSS_COLORARG1);
lpD3DDEV->SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
とすると、チラつかずに描画出来ました。
ただ、
lpD3DDEV->SetTextureStageState(0, D3DTSS_COLOROP, D3DTSS_MODULATE);
lpD3DDEV->SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
lpD3DDEV->SetTextureStageState(0, D3DTSS_COLORARG2, D3DTA_DIFFUSE);
とすると、やはりチラついてしまいます。

補足日時:2008/02/14 19:41
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!