DirectX Graphics 2D ゲーム
Posted: 2010年10月24日(日) 22:05
初めまして、DirectX9を使ってDirectX Graphicsの機能で2Dの描画方法について質問なんですが。
現在DirectXを使用して自作のゲームを制作しておりまして、2Dの横スクロールなのでメッシュなど3Dの機能は省いて、2Dのみでプログラミングしていきたいと思っております。
DirectXを使用してる理由は派手なエフェクトとカメラを使って画面にスピード感などの演出をしたいからです。
一応やりたい事を記述すると
1.左右上下の移動とズームも自由にしたいので出来る、3D空間でのカメラ操作を可能にする。
2・ゲーム自体は2Dなので、キャラなどオブジェクトをスクリーン座標での値で操作する。
3・尚且つ、回転や拡大もキャラなどオブジェクトが出来るようにする。
で現在FVFをD3DFVF_XYZに設定して行列を計算した結果をSetTransformでワールド空間に描画してます。
カメラも自由に操作出来、キャラやオブジェクトも自由に回転や拡大出来るようになっているが、スクリーン座標での値で操作出来ない。
ですが正射影変換にすればスクリーン座標で指定出来るが、カメラが固定されるので自由が利かない。
逆にFVFをD3DFVF_XYZRHWにした場合スクリーン座標で指定出来るけど、SetTransformが使えないので回転や拡大は別に計算しなければならない上に、カメラの制御もできないので、何とかD3DFVF_XYZでスクリーン座標の値で自由に操作したいんです。
やりたい事が成立するならばD3DFVF_XYZでもD3DFVF_XYZRHWでも構わないんですが、分かる方がいれば是非ご教授お願い致します。
現在DirectXを使用して自作のゲームを制作しておりまして、2Dの横スクロールなのでメッシュなど3Dの機能は省いて、2Dのみでプログラミングしていきたいと思っております。
DirectXを使用してる理由は派手なエフェクトとカメラを使って画面にスピード感などの演出をしたいからです。
一応やりたい事を記述すると
1.左右上下の移動とズームも自由にしたいので出来る、3D空間でのカメラ操作を可能にする。
2・ゲーム自体は2Dなので、キャラなどオブジェクトをスクリーン座標での値で操作する。
3・尚且つ、回転や拡大もキャラなどオブジェクトが出来るようにする。
で現在FVFをD3DFVF_XYZに設定して行列を計算した結果をSetTransformでワールド空間に描画してます。
カメラも自由に操作出来、キャラやオブジェクトも自由に回転や拡大出来るようになっているが、スクリーン座標での値で操作出来ない。
ですが正射影変換にすればスクリーン座標で指定出来るが、カメラが固定されるので自由が利かない。
逆にFVFをD3DFVF_XYZRHWにした場合スクリーン座標で指定出来るけど、SetTransformが使えないので回転や拡大は別に計算しなければならない上に、カメラの制御もできないので、何とかD3DFVF_XYZでスクリーン座標の値で自由に操作したいんです。
やりたい事が成立するならばD3DFVF_XYZでもD3DFVF_XYZRHWでも構わないんですが、分かる方がいれば是非ご教授お願い致します。