Как сгенерить карту, тобто землю, воду, леса, поля и т.д.
- From
- Boris Rudakov (2:5054/9.4)
- To
- Anton Zykov
- Date
- 2000-02-29T11:18:34Z
- Area
- RU.ALGORITHMS
Hello Anton!
26 Feb 00 10:43, Anton Zykov wrote to Boris Rudakov:
AZ> Thrive, thou glory Boris!
AZ> Wednesday February 23 2000 10:22, you wrote to Sergey Andrianov:
BR>> Я бы рекоммендовал использовать шумовые функции, типа Perlin
BR>> Noise
AZ> В большинстве случаев от карты требуется главное: быть
AZ> pregenerated (извиняюсь, проблемы с русским языком), чтобы не
AZ> замедлять вычислений во время игры. В этом случае алгоритмический
AZ> подход в чистом виде не годится.
Дык, а кто ж тебе мешает ее скешировать в тех же ячейках матрицы ?! Суть то в другом:
* Фрактальные шумовые функции дают очень естественные результаты - они для того и придуманы чтобы имитировать натуральные эффекты
* Ими очень удобно пользоваться
* Они имеют ограниченную только аппаратурой разрешающую способность (фрактал он и есть фрактал)
* Они не являются случайными, т.е. в точке X,Y функция всегда вернет одно и то же значение. Это значит что ты можешь скешировать не всю карту, а только часть ее, а остальное получать по мере необходимости в нужном разрешении.
Грубо говоря, с фрактальными шумовыми функциями ты можешь использовать плоские карты практически бесконечного размера :) Если на карте что-то меняется в результате действий игрока - сохраняешь эти изменения, если ничего не менялось - не сохраняешь, всегда можно заново сгенерировать это место.
Кстати, я встречал ссылочку, жаль не сохранил, на сгенерированную таким образом МОДЕЛЬ ПЛАНЕТЫ. Поищи на Алтависте нечто типа "+perlin +noise +planet +world +model) - может найдешь. Там тебе все - каньоны, леса, тропики, ледники, а в основе - шумовые функции.
AZ> ·-─═╦═════════───-──--··· · ··--──-───────── Crystal Falcon
Борис Рудаков, - Мальчик, кем ты хочешь стать когда вырастешь ?
BBR - Билли Гейтсом !
--- Be happy: BBR is looking at you !
* Origin: АлкАголь малыми дозами безвреден в любых количествах (2:5054/9.4)