ヒマがあるならゲームつくってね

こんなとこ見てないでゲームをつくろう

ランダムなダンジョンを生成するゲームサンプル2

ランダムなダンジョンを生成するゲームサンプルを制作しました。
制作ツールは、Unityを利用しています。
f:id:siu3:20130207205505p:plain


プロジェクトサンプル

前回のゲームサンプルとはまた違うアルゴリズムでランダムなダンジョンを生成します。
適当な大きさの部屋をつくって、ランダム位置で他の部屋と隣接させ連結することでダンジョンを生成しています。
前回と比べて、見た目バラつきがあります。


作成したスクリプトの以下になります。

RMMTest2.cs ダンジョン生成実行用のゲームオブジェクトです。
RandomMapMaker2.cs ダンジョン生成プログラム本体です。
Room.cs 部屋クラスです。
RoomConnet.cs 部屋の連結情報クラスです。
MapObjectUtility.cs ダンジョンデータをUnity上のゲームオブジェクトに変換しています。
RMMTool.cs ダンジョン生成のためのユーティリティー関数群です。
IPos2.cs 整数型2次元ベクトルクラスです。ダンジョン生成データの位置情報を格納に利用しています。

このプログラムは作った時にバグがあってずっと取れずに悩んだ結局その時は修正できませんでした。
今回C#に移植した後、調べたら意外と簡単に修正することができました。
簡単にとれた理由は、バグを調べる時の手段や見方が色々経験して増えたからだと思っています。