SyntaxHighlighter

2012年3月15日木曜日

部屋の自動生成

前回迷路作ったので今回は部屋を作った。
連絡通路の方向を決めれば適当にランダムな部屋を作る。

部屋の形状の情報をブロック単位(普通のRogue部屋)で出力するか、ローカル空間(迷路の1マス分、セル)に対する相対座標にするか迷ったけど、汎用性を考慮して後者にした。でも、いまのところブロックでも出力可能な部屋しか生成してない。


セル間の通路の道幅をランダムにしたけど、見栄え的に1つの通路は同じ幅の方がいい気がする。
一つの通路は[部屋Aからの通路,セル間連絡通路、部屋Bからの通路]で構成される。

次は連絡通路作ろう。


ゲームに反映するまでの残り工程
・連絡通路作成
・迷路、部屋、連絡通路の合成
・Box2Dへの変換



ふと思ったのだけど、ゲーム作っているよりこの部品製作の方が楽しい。
多分、仕様を考える→書く→テストする→正しく出力される、の過程がスムーズだし、出力結果がすぐ目に見える(Dxライブラリだとすぐ書ける)だと思う。
ゲーム部の記述はオブジェクト同士の関係性の記述や、それらの処理フローの記述ばかりで、ヴィジュアル的には非常に地味だ。しかも複雑でバグが見えにくく、テストしにくくて頭が痛い。
小さいものを書くのがいいね。

0 件のコメント:

コメントを投稿