3Dゲームでのマップ管理について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
sat

3Dゲームでのマップ管理について

#1

投稿記事 by sat » 14年前

2Dの場合はCSVにマップ情報を書き込んで読み取る方式で作成していました。
3D箱庭ゲームなどの場合で視錐台を使用する関係でマップを分割して描画したいのですが、3Dモデルのサイズがマップチップのように一定でない場合どのような管理方法が向いていますか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 3Dゲームでのマップ管理について

#2

投稿記事 by softya(ソフト屋) » 14年前

一昔前なら「視錐台を使用する関係でマップを分割」することはありましたが、現代ではマップ全体として配置してそのまま描画するので良いのでは?と思ってしまいますが、マップデータとしてどんな情報を持たせたいのでしょうか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

sat

Re: 3Dゲームでのマップ管理について

#3

投稿記事 by sat » 14年前

イベント発生位置やフラグ、階層情報なんかを持たせるようにしたいのです。
構造体に情報を書き込み、リスト構造にしたものを順番にテキストなどに書きこむ方式が、適当なのでしょうか。
構造としては以下のような物を検討中です。

struct data
{
CMesh mesh //メッシュ情報
D3DXVECTOR3 Pos;
D3DXVECTOR3 Scale;
D3DXVECTOR3 Rot;

 // 付加情報
D3DXVECTOR3 EventPos;
}

少しかわりますが、3DSTGのような入り組んだスクロール(途中で奥にスクロールする等)のスクロールは、どのような形でマップデータが構築されているのでしょうか。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: 3Dゲームでのマップ管理について

#4

投稿記事 by softya(ソフト屋) » 14年前

プロの場合は、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でシューティングを作ったことがないですし。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る