Страница 1 из 1

Генератор ландшафтов

Добавлено: 04 фев 2020, 19:20
altmax
Появилась одна замечательная идея сделать rlg по одному очень интересному и нетривиальному миру. Но есть одно НО. Нужен генератор открытых пространств и ландшафтов. Если с подземельями всё просто и понятно - вопрос поднимался неоднократно, существуют десятки простых и не очень алгоритмов, минимум пять из которых я уже реализовывал, тот тут я в некотором замешательстве.
Хотелось бы получить ссылки на статьи, где данный вопрос рассматривается, чтобы генерировать не рандомно стоящие деревья, а интересные локации типа лес, болото, город, поля, степь, деревня и т.п. Интересуют прежде всего алгоритмы генерации, а не готовые решения.

Re: Генератор ландшафтов

Добавлено: 05 фев 2020, 08:09
karagy

Re: Генератор ландшафтов

Добавлено: 05 фев 2020, 15:41
altmax
Тут трехмерные, мне же нужны плоские для рогаликов, чтобы не просто хаотично деревья накидать, а сделать реально что-то интересное.

Re: Генератор ландшафтов

Добавлено: 07 фев 2020, 18:37
Karlo
Вроде давно уже тут по генерации карт выкладывал свою старую поделку
Делал именно по статьям, приведенным выше

(Кнопки в генераторе тормозят жутко, надо их много раз нажимать)
https://yadi.sk/d/lhXXFBY-JzeMYA

Re: Генератор ландшафтов

Добавлено: 08 фев 2020, 08:21
altmax
Это всё слишком глобально, я же не новый Дварф Фортресс делаю ))) Мне например нужна локация Степь, или локация Деревня видимо придется самому изобретать интересные карты. На форуме почему-то все заточены на подземелья, т.к. основная часть рогаликов там и происходит. У меня же в планах - на открытой местности.

Re: Генератор ландшафтов

Добавлено: 09 фев 2020, 16:57
Максим Кич
altmax писал(а):
08 фев 2020, 08:21
Это всё слишком глобально, я же не новый Дварф Фортресс делаю ))) Мне например нужна локация Степь, или локация Деревня видимо придется самому изобретать интересные карты. На форуме почему-то все заточены на подземелья, т.к. основная часть рогаликов там и происходит. У меня же в планах - на открытой местности.
Принципиальной разницы нет, что делать. По сути, любой генератор карты так или иначе имеет три основных элемента:

1. Лексика — элементы, из которых состоит карта
2. Случайная функция — шум перлина, циклы цикад, фрактальная плазма, алгоритм Diamond-Square, фрактальное деление прямоугольника — всё что подходит к лексике.
3. «Модератор» — логика, которая не даёт случайной функции сгенерировать заведомо непроходимую карту. Скажем, в Path of Exile каждая случайная карта автоматически проверяется и перегенерируется из нового случайного зерна, если от входа нельзя достичь выхода.

Открытая местность так или иначе будет тяготеть к разного рода шумам и фракталам — потому что так устроена природа, это то, что мы ожидаем увидеть.

Re: Генератор ландшафтов

Добавлено: 11 фев 2020, 09:19
karagy

Re: Генератор ландшафтов

Добавлено: 17 окт 2020, 14:13
altmax
Кто-нибудь сталкивался с триангуляцией Делоне? Интересует пошаговый алгоритм и применяемые формулы

Re: Генератор ландшафтов

Добавлено: 17 окт 2020, 16:12
karagy

Re: Генератор ландшафтов

Добавлено: 17 окт 2020, 17:10
altmax
karagy писал(а):
17 окт 2020, 16:12
https://habr.com/ru/search/?q=делоне
Хотелось бы более подробное описание. Особо интересует векторное умножение векторов - какие именно перемножать и как интерпретировать результат, чтобы определить, находится отрезок в видимости относительно точки или невидим. Остальное то в принципе понятно.

Ну и наверно придётся ознакомиться с https://e-maxx.ru/bookz/files/skvortsov.pdf - 120 страниц, посвященных только триангуляции Делоне.

P.S. Интересная кстати книга, прям с удовольствием прочитал первые 20 страниц. Когда в школе учился - мне не особо нравилась математика, т.к. не видел практического применения. А тут заинтересовало, заодно и формулу площади треугольника вспомнил, и как вычислить радиус описанной окружности.