Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Подкиньте несложный алгоритм построения локаций...

Подкиньте несложный алгоритм построения локаций...

Поделиться
joubПостоялецwww17 окт. 201715:55#0
Всем доброго для, ищу адекватный, не сложный (без наворотов) алгоритм (пример) построения локаций.
По сути нужно генерировать карту

1. 2 уровня высот (море/земля)
2. На земле могут встречаться лесные массивы, горы(заградительный элемент)
3. Всякого рода шахты с голдой, "заброшенные" каменоломни....
4. Реки, озера...

желательно масштабировать это все до бесконечности ))

nesПостоялецwww17 окт. 201716:20#1
+ Показать
joubПостоялецwww17 окт. 201716:22#2
смешно.
gudleifrПостоялецwww17 окт. 201716:29#3
joub
> желательно масштабировать это все до бесконечности
Вот и ответ. Фрактал, однако...

ВасянУчастникwww17 окт. 201716:44#4
joub
> Всем доброго для, ищу адекватный, не сложный (без наворотов) алгоритм (пример)
> построения локаций.
> По сути нужно генерировать карту
> 1. 2 уровня высот (море/земля)
> 2. На земле могут встречаться лесные массивы, горы(заградительный элемент)
> 3. Всякого рода шахты с голдой, "заброшенные" каменоломни....
> 4. Реки, озера...
>
> желательно масштабировать это все до бесконечности ))

Если нужна карта планеты (квадратной, не шарообразной и не тороидальной), то вот мой вариант.
Делал без масштабирования до бесконечности, без рек, озёр и шахт с голдой. Крайне геморный вариант.
1. Карта высот алгоритмом Diamond Square (сойдёт любой другой). Опционально сглаживание.
2. Карта материков и океанов с разными глубинами и высотами.
3. Карта влажности в зависимости от высоты над уровнем моря и чего-то там ещё. Уже не помню как делал. Посмотрел карты нашей земли и попытался сделать похоже.
4. Карта температур в зависимости от высоты над уровнем моря и влажности. Так же посмотрел карты и сделал, чтобы генерировало похоже.
5. Карта биомов. Тоже открывал атлас, играл с цифрами и пытался сделать как на земле.

В результате получается плоская карта биомов с 2-мя уровнями высот. Она используется. Остальные карты выкидываются

Вот такой результат даёт генератор.
Карта высот:

+ Показать

Раздельно суша и океаны:
+ Показать

Карта влажности
+ Показать

Карта температур:
+ Показать

Биомы:
+ Показать

Если надо, могу скинуть исходник или рабочую прогу (если найду незапоротую версию). Исходник на Lua.

ВасянУчастникwww17 окт. 201716:49#5
Алгоритм на Lua (да, говнокод. Сорян)
+ Показать
+ Показать
+ Показать
ВасянУчастникwww17 окт. 201716:50#6
Продолжение
+ Показать
joubПостоялецwww17 окт. 201718:08#7
Васян
мысль уловил ))) буду копаться в этом направлении, а какие алгоритмы карт высот еще бывают ?: )
ВасянУчастникwww17 окт. 201719:25#8
joub
> а какие алгоритмы карт высот еще бывают ?
Perlin Noise

Правка: 17 окт. 2017 19:33

/ Форум / Программирование игр / Игровая логика и ИИ

2001—2017 © GameDev.ru — Разработка игр