DXライブラリには3D機能がないのですが、
工夫をすることで3Dっぽい表現はできるのでしょうか。
例えば画像が表と裏を繰り返しながら回転してるようなものを作れるのでしょうか。
3Dっぽい表現
Re:3Dっぽい表現
トランプが表裏回転しながら~といった感じでいいのでしょうか
一応DrawPolygon3Dという関数があります
y軸中心に回転するだけなら楽に実現できるかと思います
(斜めに回転したり、となると結構面倒ですが)
ただ毎回値を設定していくのは面倒なので自前で簡単化する関数を用意したほうがよさそうです
たとえば
x座標の中心、y座標の中心、z軸位置、横幅、高さ、回転角度、値を入れたいVERTEX_3D構造体を渡すと
値を設定してくれるような関数です
他にもDrawModiGraphという関数も使えるかもしれませんがこれは3Dっぽくは見えないかも
試してないので分からないですが…
一応DrawPolygon3Dという関数があります
y軸中心に回転するだけなら楽に実現できるかと思います
(斜めに回転したり、となると結構面倒ですが)
ただ毎回値を設定していくのは面倒なので自前で簡単化する関数を用意したほうがよさそうです
たとえば
x座標の中心、y座標の中心、z軸位置、横幅、高さ、回転角度、値を入れたいVERTEX_3D構造体を渡すと
値を設定してくれるような関数です
他にもDrawModiGraphという関数も使えるかもしれませんがこれは3Dっぽくは見えないかも
試してないので分からないですが…
Re:3Dっぽい表現
ライブラリを使わずに、
自分で3次元空間を用意して、物体と、カメラを置いてあげれば
3Dの計算はできます。
(実装自体は少々手間なんですが)
それをDXライブラリを使って表示すれば、DXライブラリで3Dを扱うことができます。
また、種類が少なければ3Dを表示した画像を事前に用意しておくというてもあります。
ただ、自分で書くときは処理速度をゲームに使用可能なレベルまでチューニングするのが大変かもしれません。
DirectXでは3Dを扱う機能があったはずなので、そちらを勉強した方が
自分ですべて書くより楽で、速くて、バグが少ないです。
自分で3次元空間を用意して、物体と、カメラを置いてあげれば
3Dの計算はできます。
(実装自体は少々手間なんですが)
それをDXライブラリを使って表示すれば、DXライブラリで3Dを扱うことができます。
また、種類が少なければ3Dを表示した画像を事前に用意しておくというてもあります。
ただ、自分で書くときは処理速度をゲームに使用可能なレベルまでチューニングするのが大変かもしれません。
DirectXでは3Dを扱う機能があったはずなので、そちらを勉強した方が
自分ですべて書くより楽で、速くて、バグが少ないです。