Je travaille sur un monde procédural 3D depuis un certain temps et je souhaite commencer à ajouter des systèmes de grottes. J'utilise actuellement 2D / 3D Perlin Noise pour la génération de terrain, en combinaison avec les Marching Cubes pour un terrain plus lisse. Je suis juste pris de court quand il s'agit de longues grottes interconnectées.
J'espère obtenir quelque chose de plus semblable aux systèmes de grottes de Minecraft. Ils semblent être très connectés, se ramifient au hasard dans presque toutes les directions, et presque n'importe quel point de la grotte aurait un aspect assez circulaire avec un rayon assez égal dans l'ensemble (pas le meilleur libellé, mais pas tout à fait sûr de le dire autrement). .
Le plus grand défi pour générer des grottes comme je le veux est que je veux générer le monde à la volée. Le monde est généré morceau par morceau actuellement, à partir de l'endroit où se trouve le joueur et il en sort vers l'extérieur. Je ne voudrais PAS générer du monde, puis creuser les cavernes en utilisant un motif errant, des automates cellulaires, etc.
Y at-il des algorithmes bien connus qui peuvent être utilisés pour cela? Si oui, est-ce que quelqu'un veut partager comment il fait quelque chose de similaire? J'apprécierais grandement toute aide.
Un bon exemple: