Je travaille actuellement sur un jeu de plateforme 2D basé sur des tuiles similaire à Terraria à certains égards, bien que je rencontre des difficultés avec la génération de terrain. J'ai fait quelques bases, bien qu'elles ne soient pas utiles.
J'ai essayé quelques techniques différentes comme Perlin Noise et j'ai lu quelques autres telles que Midpoint Déplacement, bien que je ne sois pas sûr de ce qui serait le mieux, ou une combinaison de différentes techniques pour générer différentes zones. (Tels que le déplacement médian pour la forme générale du terrain et le bruit Perlin pour les grottes.)
J'ai trouvé une excellente explication de la façon dont je pourrais le superposer avec la bibliothèque de bruit accidentel , bien qu'il soit en C ++, et je ne connais pas assez de C ++ pour le compiler dans une DLL que je peux utiliser à partir de C #. J'ai essayé de copier ceci en C #, bien que je ne sache pas comment fusionner deux effets ensemble (le gradient pour la base générale, puis la fractale pour les détails).
Actuellement, j'utilise une fractale plasma et les résultats sont extrêmement variés. Par exemple, il peut générer un terrain où il n'y a pratiquement pas de surface, ou il peut générer un terrain où il n'y a aucune surface.
Un exemple de carte correcte serait mieux avec quelques améliorations supplémentaires. (Le noir est solide, le blanc est l'air):
Et un exemple d'une terrible carte. (Le noir est solide, le blanc est l'air):
Fondamentalement, ce que je demande, quelle serait une meilleure façon de générer le terrain, ou de le forcer à s'assurer qu'il y a une superficie raisonnable, avec un temps de génération aussi rapide que possible. Ou, alternativement, comment je serais en mesure d'obtenir le même résultat que la bibliothèque de bruit accidentel, mais en C #.
Tout exemple serait très apprécié.