※本記事にはアフィリエイトリンクが含まれています。
「プロシージャル生成(procedural generation)」とは、決まった手順やアルゴリズムに従ってプログラムが自動的にマップやレベルを作り出す技術のことです。『The Binding of Isaac』や『Enter the Gungeon』のような、毎回違うダンジョンが生成されるローグライクゲームで広く使われています。
今回紹介するのは、個人開発者のRyan Carpenter氏がUnityで開発した「Labyrinth Procedural Generator」というダンジョン生成の試作です。ブラウザ版とWindows版の技術デモが公開されています。詳細は80.lv の記事で紹介されています。
このプロジェクトは2023年、Carpenter氏が大学でFPSゲーム用に3Dダンジョンを自動生成するアルゴリズムを設計したのが始まりです。一度は開発を離れましたが2024年に再開し、約2年をかけてついに動作するデモを公開するに至りました。
- 『Zelda』シリーズや『Dark Souls』のような、部屋同士がつながった探索マップにインスピレーションを得ている
- ボス部屋やショップ、アイテム部屋を含め、数千の部屋を接続性を保ちながら生成できると紹介されている。速度は環境や条件を確認する
- 開発者はマップのレイアウトや進行スタイルを細かく制御できる
- 「Blueprint」は、部屋を置ける位置をグリッド上に示し、次の処理でルールに従って部屋を生成する仕組み
- 現時点ではUnity 3Dで実装されているが、他のゲームエンジンにも移植可能な設計になっている
💡 プロシージャル生成
あらかじめ決めたルールやアルゴリズムに沿って、プログラムがコンテンツ(マップ・地形・アイテム配置など)を自動的に作り出す仕組み。多様な配置を生み出せる一方、ルールの設計や生成結果の検証には手間がかかる。
💡 ローグライク
プレイするたびにマップやアイテム配置がランダムに変わり、死んだら最初からやり直しになるタイプのゲームジャンル。繰り返し遊んでも飽きにくいのが特徴。
Carpenter氏は紹介時、将来的にUnityパッケージとして配布する構想を示していました。ブラウザ版とWindows版の技術デモが公開されています。自分のゲームに組み込めるパッケージの配布状況や利用条件は別途確認が必要です。
✅ ローグライクやRPG風の探索マップを生成する手法として参考になる
✅ 公開デモを通じて、生成されるダンジョンの例を確認できる
⚠️ 現状はUnity向けの実装であり、他エンジンへの移植には自前での調整作業が必要になる
Unityでの開発やプロシージャル生成の基礎を体系的に学びたい方には、以下のような講座も参考になります。
※本リンクはアフィリエイトリンクです。
- 個人開発者が約2年かけて動作デモを公開したUnity製のダンジョン自動生成の試作
- 「Blueprint」という独自手法で、数千の部屋を接続性を保ちながら生成できると紹介
- Unityパッケージ化は紹介時の構想であり、他エンジンで使うには書き直しが必要
ソース: 80.lv
