Niptlox
@Niptlox
Python; Unity

Как сгенерировать срез острова в 2d?

Я на python Pygame делаю 2d игру, все пространство разбто на чанки(пространства) размерами 16х16. При попадании в новый чанк мне надо сгенерировать там пространство c острововами, подскажите алгоритмы генерации островов чтоб они не были такими ущербными как на картинке
617faa0778e2f436716295.png
  • Вопрос задан
  • 106 просмотров
Решения вопроса 2
Niptlox
@Niptlox Автор вопроса
Python; Unity
В итоге решил использовать библиотеку Noise с шумом перлина по формуле

from noise import snoise2
octaves = 5
freq = 20 * octaves
v = snoise2(tile_x / freq, tile_y / freq, octaves)
if v > 0.2:
    static_tiles[y_pos][x_pos] = 1

6180ebbbc34e2153391892.jpeg
Ответ написан
Комментировать
RiseOfDeath
@RiseOfDeath
Диванный эксперт.
Чисто алгоритмически можно, например, так: https://gamedev.stackexchange.com/questions/21297/...

Как вариант - сделать набор шаблонов - острова и/или их фрагменты - из которых что-то лепить уже "на лету".

Но опять же на масштабах 16х16 тайлов что-то не ущербное вы не сделаете, и как мне кажется второй вариант будет на таких масштабах наименее ущербно выглядеть и потребует от вас меньших затрат времени.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы