3

私はしばらくの間、3D プロシージャル ワールドに取り組んでおり、洞窟システムの追加を開始したいと考えています。

手続き型の方法で 3D 洞窟システムを作成するかなり簡単な方法を見つけたいと思っています。私は現在、パーリン ノイズを使用して世界を生成しています。立面図/詳細には 2D、オーバーハングや小さな洞窟を切り開くには 3D を使用していますが、相互に接続された長い洞窟になると困惑しています。

マインクラフトの洞窟システムのようなものを手に入れたいと思っています. それらは非常に密接につながっているようで、ほぼあらゆる方向にランダムに枝分かれしており、洞窟内のほぼすべての点がかなり円形に見え、全体にかなり等しい半径があります (最良の表現ではありませんが、他にどのように表現すればよいかわかりません)。 )。

私が望んでいるような洞窟を生成するための最大の課題は、その場で世界を生成したいということです。現在、世界はチャンクごとに生成され、プレイヤーがいる場所から始まり、そこから外側に向かって生成されます。世界を生成してから、放浪パターンやセルオートマトンなどを使用して洞窟掘り出すことはしたくありません。

良い例:

ここに画像の説明を入力

4

1 に答える 1

0

あなたの世界を生成するとき、生成アルゴリズムについていくつかのかなりの仮定を立てるつもりです。

マインクラフトに似た世界を作っています。これは、世界がブロックでできており、それらのブロックがないことが「空気」またはプレイヤー空間を構成していることを意味します。したがって、世界でブロックを作成しているときは、ブロックを配置したくないか、逆に、洞窟が必要な場所に配置されたブロックを削除します。わかった?

本質的に負の空間である洞窟をどのように生成するかは、本当にあなた次第です. しかし、あなたの質問にはおそらくあなたの答えがあります。洞窟は「非常に密接につながっており、ほぼすべての方向にランダムに枝分かれしており、洞窟内のほぼすべての点がかなり円形に見え、全体にほぼ等しい半径を持っています」. 次に必要なのは、その仕様に合わせて生成し、そこにブロックを配置しないか、既に配置されているブロックを削除するか、自分の言葉で「掘り出す」生成アルゴリズムだけです。

補足として、生成アルゴリズムがプレイヤーのいる場所から生成されるようにするのはかなり悪い考えに思えますが、うまくいくかどうかはわかりません。

于 2012-08-03T20:58:33.233 に答える