Ich arbeite schon seit einiger Zeit an einer 3D-Verfahrenswelt und möchte nun Höhlensysteme hinzufügen. Ich verwende derzeit 2D / 3D Perlin Noise für die Geländegenerierung in Kombination mit Marching Cubes für glattes Gelände. Ich bin nur ratlos, wenn es um lange miteinander verbundene Höhlen geht.
Ich hoffe, mehr wie Minecrafts Höhlensysteme zu bekommen. Sie scheinen sehr verbunden zu sein, verzweigen sich zufällig in fast jede Richtung und fast jeder Punkt in der Höhle würde ein ziemlich kreisförmiges Aussehen mit einem ziemlich gleichen Radius haben (nicht die beste Formulierung, aber nicht ganz sicher, wie man es anders ausdrückt). .
Die größte Herausforderung für die Erzeugung von Höhlen, wie ich sie mir wünsche, ist, dass ich die Welt im Fluge erzeugen möchte. Die Welt wird derzeit Stück für Stück erzeugt, beginnend dort, wo sich der Spieler befindet, und von dort aus nach außen. Ich würde NICHT die Welt erschaffen wollen und dann die Höhlen mit einem Wandermuster, zellularen Automaten usw. ausgraben.
Gibt es dafür bekannte Algorithmen? Wenn ja, möchte jemand mitteilen, wie er etwas Ähnliches tut? Ich würde mich über jede Hilfe sehr freuen.
Ein gutes Beispiel: