10/01/23 01:00:37 wc6hSibN
俺はjava3dで2D描画してるから分からんけど、D3DだろうがOpenGLだろうが
普通2Dを描画するときも3Dと同じモジュールを使用するんじゃないか。
3D空間上でカメラの向きと垂直に存在する平面にテクスチャで2D画像を入れれば「2D」になる。
基本3Dデバイスを利用して2Dを描画するゲームは大抵そういう処理をしていると思われる。
だから>>516のやった記述で正解だと思われる。
Direct3Dにはトランスフォーム後の(x, y, depth_buffer)座標で描画できるモジュールが
用意されていた気がするけど、OpenGLでは見たことがない。少なくとも私は…。
javaに限らずC#でもdrawImage()は鬼のように重いので、出来る限り使わないのが無難だと思われる。
アニメーションを表示したいなら、あらかじめ複数のテクスチャを用意して
3Dモデル上に貼り付け、表示を切り替えるのをお勧めする。
「2Dも3Dで描画したほうが速い」という事実があるように、一切3D要素を持たない
2D画面でも、3D空間上でテクスチャとして表示した方が速い。