Obecnie pracuję nad opartą na kafelkach platformówką 2D podobną do Terrarii, chociaż mam trudności z generowaniem terenu. Mam pewne podstawy, chociaż nie są one przydatne.
Wypróbowałem kilka różnych technik, takich jak hałas Perlina, i czytałem o innych, takich jak przesunięcie punktu środkowego, chociaż nie jestem pewien, która z nich byłaby najlepsza, ani kombinacja różnych technik generowania różnych obszarów. (Takich jak przesunięcie punktu środkowego dla ogólnego kształtu terenu i hałas Perlina dla jaskiń).
Znalazłem doskonałe wyjaśnienie, w jaki sposób mogę podzielić go za pomocą Accidental Noise Library , chociaż jest on w C ++, i nie znam wystarczającej ilości C ++, aby skompilować go do biblioteki DLL, której mogę używać z C #. Próbowałem skopiować to w C #, chociaż nie wiem, jak mogę połączyć dwa efekty razem (gradient dla ogólnej podstawy, a następnie fraktal dla szczegółów).
Obecnie używam Fractal Plazmy, a wyniki są bardzo zróżnicowane. Na przykład może generować teren, na którym prawie nie ma powierzchni, lub może generować teren, na którym w ogóle nie ma powierzchni.
Przykład lepszej mapy byłby jednak lepszy z kilkoma ulepszeniami. (Czarny jest jednolity, biały to powietrze):
I przykład strasznej mapy. (Czarny jest jednolity, biały to powietrze):
Zasadniczo pytam o to, jaki byłby lepszy sposób generowania terenu lub zmuszania go do upewnienia się, że jest odpowiednia ilość powierzchni, z czasem generowania tak szybko, jak to możliwe. Lub, alternatywnie, w jaki sposób byłbym w stanie osiągnąć taki sam wynik jak Accidental Noise Library, ale w C #.
Wszelkie przykłady byłyby bardzo mile widziane.