ページ 1 / 1
3Dゲームでのマップ管理について
Posted: 2011年7月29日(金) 14:00
by sat
2Dの場合はCSVにマップ情報を書き込んで読み取る方式で作成していました。
3D箱庭ゲームなどの場合で視錐台を使用する関係でマップを分割して描画したいのですが、3Dモデルのサイズがマップチップのように一定でない場合どのような管理方法が向いていますか?
Re: 3Dゲームでのマップ管理について
Posted: 2011年7月30日(土) 14:39
by softya(ソフト屋)
一昔前なら「視錐台を使用する関係でマップを分割」することはありましたが、現代ではマップ全体として配置してそのまま描画するので良いのでは?と思ってしまいますが、マップデータとしてどんな情報を持たせたいのでしょうか?
Re: 3Dゲームでのマップ管理について
Posted: 2011年8月02日(火) 21:02
by sat
イベント発生位置やフラグ、階層情報なんかを持たせるようにしたいのです。
構造体に情報を書き込み、リスト構造にしたものを順番にテキストなどに書きこむ方式が、適当なのでしょうか。
構造としては以下のような物を検討中です。
struct data
{
CMesh mesh //メッシュ情報
D3DXVECTOR3 Pos;
D3DXVECTOR3 Scale;
D3DXVECTOR3 Rot;
// 付加情報
D3DXVECTOR3 EventPos;
}
少しかわりますが、3DSTGのような入り組んだスクロール(途中で奥にスクロールする等)のスクロールは、どのような形でマップデータが構築されているのでしょうか。
Re: 3Dゲームでのマップ管理について
Posted: 2011年8月02日(火) 22:33
by softya(ソフト屋)
プロの場合は、2Dの時代から複雑な情報を持つ場合は専用ツールを作るのが定番でした。3Dとなると自分で作るのが一番だと思います。そうすれば、データファイルの構造はバイナリで自在に決めることが出来ますね。
[追記]
ちなみにパーツとイベント範囲を必ず一致させる必要は無いと思います。つまり、別々の情報で良いんじゃないでしょうか?
いけない所とかはパーツと一致すると思いますが。
3Dゲームエンジンの「unreal development kit」とか無料で試せるので、どんな機能があるか触ってみてはどうでしょうか?
「unreal development kit」は汎用品なので高機能ですが機能を絞れば自分で作れると思いますし、作れるぐらいの技術がないとゲーム構築自体が難しいと思います。
「UDN - Three - DevelopmentKitHomeJP」
http://udn.epicgames.com/Three/Developm ... omeJP.html
あとUnity も紹介しておきます。
「Unity - Japanese information」
http://unity3d.com/japan/
sat さんが書きました:少しかわりますが、3DSTGのような入り組んだスクロール(途中で奥にスクロールする等)のスクロールは、どのような形でマップデータが構築されているのでしょうか。
想定されているものがわかりませんが、普通に3D空間として構築してあると思いますよ。
自キャラの移動平面が3D空間上をどう動くか移動データを持つってのがひとつの方法です。ただ、プログラマによってやり方はいくらでも出ててくると思いますので、こうじゃなきゃいけないってわけではありません。私ならこうするかなって例です。現実に私は3Dでシューティングを作ったことがないですし。