[過去ログ]
【ダンジョン】 自動生成 2 【地形】 (1002レス)
【ダンジョン】 自動生成 2 【地形】 http://mevius.5ch.net/test/read.cgi/gamedev/1182223295/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
324: 名前は開発中のものです。 [sage] 2009/08/05(水) 00:07:49 ID:UG9dNowM 最近ローグ系のゲームを作り始めたんですが、いきなり詰まってしまいました。 皆さんはダンジョンをどういうデータ構造で作っているんでしょうか? 最初、ダンジョンの大きさの2次元配列に、床・通路・壁のどれかを入れていこうと思ったのですが、 同じフロア内の敵のみにダメージなどということを考えると、部屋クラスが必要だろうと思いました。 そして部屋クラスを作り、持つデータは部屋の座標・サイズにしたのですが、 風来のシレンでいう、つるはし・大砲・大部屋の巻物などの壁を破壊するものがありますよね。 それを考えると、部屋は長方形とは限らないから座標とサイズを持ってもダメじゃないか?と訳が分からなくなりました。 それに壁を壊したときの、そこは部屋の一部になるのか?部屋と部屋が繋がったときは?など色々な疑問が沸いてきて頭が爆発しそうです。 読み辛い上に長文になってしまいましたが、どうか力を貸して下さい。お願いします。 http://mevius.5ch.net/test/read.cgi/gamedev/1182223295/324
326: 名前は開発中のものです。 [sage] 2009/08/05(水) 01:57:00 ID:djmbzU5s >>324 俺が昔、ローグライクRPGを作ったときは、 「ダンジョンの大きさの2次元配列」と「部屋クラス」の両方を使ってた。 つるはし・大砲で壁を破壊したときは2次元配列の壁だったところを通路に変更するだけで、 部屋クラスのデータは変更しない。 (壁を壊したとき、そこは通路扱いで、部屋の一部にはならない) 大部屋の巻物を使ったときは、2次元配列を床で埋め尽くして、全部屋クラスを破棄し、 大部屋の示す部屋クラスを1つ作るというようにしていた。 部屋と部屋が繋がっても特になにも処理はしなかったが、問題はなかった。 ちなみに、2次元配列に入れるデータは「(部屋の)床」「通路」「壁」以外に 「壊せない壁」をダンジョンの外周部分に配置しておくと、つるはしでどんどん壁を 壊していって、配列の外に飛び出してしまうことを防げるので便利だった。 http://mevius.5ch.net/test/read.cgi/gamedev/1182223295/326
327: 名前は開発中のものです。 [sage] 2009/08/05(水) 05:40:23 ID:8C+6rJYo >324 ちょっと前に作ったときは、部屋情報はマップデータとは別に部屋構造体を用意して、 マップ作成時に部屋データもいっしょに作成。 つるはしとか壁を破壊する系は実装しなかったけど、やるとしたら破壊した場所は 全部通路認定。これが一番楽。もし、破壊した場所も部屋認定したいなら、 そもそも長方形以外の形も扱える部屋情報が必要になるからね。 http://mevius.5ch.net/test/read.cgi/gamedev/1182223295/327
330: 324 [sage] 2009/08/05(水) 15:16:44 ID:UG9dNowM >>325-329 皆さんレスありがとうございます。なるほどと思うことばかりです。 2次元配列に部屋ID・通路・壁・壊せない壁を入れる。 壁破壊が起こったときは全て通路にする。(大部屋の処理は別に作る) これで作ろうと思います。 アドバイス本当にありがとうございました。 http://mevius.5ch.net/test/read.cgi/gamedev/1182223295/330
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.027s