クラシックタイルエンジンで動作するゲームを設計していますが、その世界はランダムに生成されます。これを行う既存のゲームやアルゴリズムはありますか?私が見つけた手続き生成アルゴリズムは、タイルシステムを使用することはありません...タイルシステムを使用して「世界」全体を生成する最良の方法は何でしょうか。私はブロックの迷路についてではなく、全体的な「世界地図」について話している
クラシックタイルエンジンで動作するゲームを設計していますが、その世界はランダムに生成されます。これを行う既存のゲームやアルゴリズムはありますか?私が見つけた手続き生成アルゴリズムは、タイルシステムを使用することはありません...タイルシステムを使用して「世界」全体を生成する最良の方法は何でしょうか。私はブロックの迷路についてではなく、全体的な「世界地図」について話している
回答:
あなたの質問は、手続き型コンテンツ生成の分野へとあなたを導きます。
連続/アナログ手法から派生したタイルベースのワールド生成
連続とは、タイルではないもの、アナログであるもの、ベクトル化されたマップの例を意味します。連続的な手法を使用して生成し、それを量子化できます。たとえば、高解像度のパーリンノイズ画像を生成し、タイルマップサイズに合わせて解像度を下げ、ピクセルをサンプリングして高さマップを提供します。(高さマップは、あなたの世界にとって素晴らしい出発点になる可能性があります。)これは、タイルに適用する方法に関して何をすべきかを示していないソースを見たことに言及したためです。
「点滅」カービングアプローチを使用したタイルベースのワールド生成
タイル(セル)ベースのアプローチを使用すると、たとえばブラインドジェネレーションのようなものを作成できます。直接隣接するタイルですが、これは昆虫の作品のように見える傾向があります。これは典型的なCA(セルオートマトン)のものであり、少し大規模なインテリジェンスを表示します。
より広い世界観、トップダウンを使用したタイルベースの世界生成
最初に地域ごとに構築するため、タイルごとに世界を構築するためのよりインテリジェントなアプローチが必要です。このようにして、たとえば Tarn AdamsがDwarf Fortressで行ったように、さまざまなバイオーム、政治地域など。もちろん、これには世界をどのように分割したいかについて少し考える必要があります。多くの方法がありますが、あなたはあなた自身の研究をしなければなりません。
手続き型コンテンツの生成は非常に広範なトピックなので、実際に何が欲しいのか、どうすればいいのかをしっかりと理解する前に、十分な読書をする必要があります- 悪魔は常に詳細にあります。そのため、このための良いソースは、rec.games.roguelike.developmentメーリングリスト(タイルベースの手続き型世界に関する膨大な情報)、AmitPのゲームプログラミングページ(「その他のトピック」を参照)、そして最後になりますが、手続きコンテンツ生成ウィキ。
手続き生成は非常に大きなトピックです。あなたはどのくらい深く行きますか?
ニック・ウィギルの答えは一流です。コヒーレントランダムテレインを作成するいくつかの数学的な方法を検討することを提案することで、これに追加します。
パーリンノイズは、滑らかなランダム性を作成する優れた方法を提供し、あらゆる種類の地形に最適です。侵食のシミュレーションは、高さの現実的な印象を与えることができます(ただし、タイルベースのゲームをしているので、それは必要ないかもしれません)
Tribal TroubleのメーカーであるOddlabsによるこのような論文で説明されている多くのテクニックは、2Dおよび低解像度でもうまく機能します。この種のアプローチに慣れている場合は、これらの手法を学習する価値があるかもしれません。
Spelunkyの手続き型空間 -Darius Kazemiによる手続き型コンテンツ生成の優れた紹介
Spelunkyは、Derek Yuによる2Dゲームで、いくつかの素晴らしい手続きレベルがあります。
手続き型コンテンツwiki http://pcg.wikidot.com/もあります。