Как сгенерить карту, тобто землю, воду, леса, поля и т.д.
- From
- Boris Rudakov (2:5054/9.4)
- To
- Sergey Andrianov (2:5054/9)
- Date
- 2000-02-23T10:22:01Z
- Area
- RU.ALGORITHMS
Hello Sergey!
22 Feb 00 09:11, Sergey Andrianov wrote to Andrey Trubitsyn:
SA> Здравствyй, yважаемый Andrey!
SA> Недавно, Пон Фев 21 2000 в 20:59, некто Andrey Trubitsyn
SA> писал All по поводy Как сгенерить карту, тобто землю, воду, леса,
SA> поля и т.д. :
AT>> Алгоритм подскажите, может есть какой !
SA> Насколько я понимаю, карта - это двумерный массив, ячейки которого
SA> могут принимать одно из заданного набора значений (земля, вода, леса,
SA> поля...).
SA> Сначала следует задать процентное соотношение между землей,
SA> водой...
SA> Затем при помощи датчика случайных чисел вычислить для каждой точки
SA> соответствующий ей тип ландшафта.
Слишком грубый алгоритм.
SA> В общем, сгенерить хорошую карту (для стратегичекой игры,
SA> насколько я понимаю) - дело непростое и требующее серьезной работы, в
SA> том числе головой. Простого алгоритма задесь IMHO не существует.
Я бы рекоммендовал использовать шумовые функции, типа Perlin Noise (самая известная и распространенная). Оригинальную реализацию можно взять прямо у автора на http://mrl.nyu.edu/perlin
Идея в том, что сначала либо этой функцией, либо суперпозицией таких функций с разными коэффициентами получаешь рельеф. Где вода - определяется элементарно если задать "уровень моря". Потом еще пачкой функций с учетом высоты рельефа вычисляются контуры и тип лесов, полей и всего остального.
Кстати, за счет того что шумовые функции - алгоритмические, они имеют бесконечную разрешающую способность, это лучше чем просто дискретные характеристики ячеек карты.
SA> Не прощаюсь
SA> Sergey
Boris Rudakov, Да-а-а... не пустят на банкет,
BBR когда в кармане баксов нет !
--- Be happy: BBR is looking at you !
* Origin: АлкАголь малыми дозами безвреден в любых количествах (2:5054/9.4)