【C++】 DirectX初心者質問スレ Part32 【C】
■ このスレッドは過去ログ倉庫に格納されています
0041デフォルトの名無しさん
2010/10/31(日) 20:30:57今、ビューポートを画面と同じサイズにして3Dモデルを描画しています。
これを、例えばそのまま 100px 左にずらして描画したいのですが、方法がわかりません…。
単純にモデルの位置をずらしても、カメラとの角度が変わってしまうため、見た目が変わります。
奥行き自体は表現したいので、平行投影にすることはできません。
単純にビューポートを左にずらした場合、つまり D3DVIEWPORT9::x = -100 とした場合、何も描画されなくなりました。
(SetViewport で D3DERR_INVALIDCALL が返ってくると思ったのですが、エラーは返って来ませんでした。)
一度、テクスチャに描画してからあらためて D3DFVF_XYZRHW でそのテクスチャを描画すればうまく行くのですが、
これだけのために2段階描画にするのも…と思いますし、他のモデルとの奥行きを考えるのが難しくなります。
今考えてるのは、射影行列を頑張って作る方法(左右対称ではなく、右に偏ったカメラを作る)ですが、
なかなか上手くいきません…。
もっと単純にずらす方法はないでしょうか?
よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています