Фрактальные карты с открытым исходным кодом [закрыто]

StackOverflow https://stackoverflow.com/questions/157211

Вопрос

Я заинтересован в создании игры, которая использует фрактальные карты для более реалистичной географии.Однако единственные программы фрактальных карт, которые я нашел, предназначены только для Windows, например Фрактальный картограф.Излишне говорить, что они также не имеют открытого исходного кода.

Существуют ли программы для создания фрактальных карт с открытым исходным кодом, желательно на Python или C/C++?В идеале мне бы хотелось что-то, что можно «подключить» к программе, а не использовать отдельно.

Это было полезно?

Решение

Фракпланета может оказаться полезным.

Другие советы

Базовая генерация ландшафта включает в себя создание карты высот (изображения) и ее рендеринг с использованием цвета пикселя в качестве высоты.Таким образом, вам может пригодиться код генерации изображений или текстур.Это хороший урок.

Что касается аспекта местности, обратите внимание на либнойз.Его упакован для Debian, и имеет отличную документацию с главой, посвященной генерация ландшафта с примером кода C++.

Конечно, «карты» — это гораздо больше, чем просто добавление некоторых цветов в поле высоты (например, Фракпланета добавляет реки и озера).И тип местности, которую вы получаете с помощью этих методов, на самом деле не так уж и реалистичен;Континенты обычно не поднимаются от побережья к скалистым внутренним районам, поэтому, возможно, поможет моделирование дрейфа континентов, процессов горообразования и эрозии (альтернативно, притворяться).А затем, если вы хотите, чтобы растительность или артефакты форм жизни (скажем, дороги и города) заполнили вашу карту, вы можете взглянуть на клеточные автоматы или другие инструменты «искусственной жизни».Наконец, Проект виртуальной местности стоит просмотреть дополнительные ссылки и идеи.

Я настоятельно рекомендую приобрести копию

Текстурирование и моделирование:Процедурный подход

Я вижу, что сейчас это третье издание (у меня есть только второе), но оно полно полезных статей об использовании процедурного текстурирования, включая несколько глав об их использовании во фрактальных ландшафтах.Он также начинается с подробного обсуждения шумовых алгоритмов — так что у вас есть все, от основ и выше.В число авторов входят Масгрейв, Перлин и Уорли, так что лучше и не придумаешь.

Если вам нужна по-настоящему реалистичная география, вы можете использовать данные НАСА. СРТМ набор данных, возможно, в сочетании с OpenStreetMap функции.:-)

Очень простой реализацией было бы использование фрактала смещения средней точки, http://en.wikipedia.org/wiki/Diamond-square_algorithm, или несколько более сложный алгоритм Diamond-Squares.http://www.gameprogrammer.com/fractal.html#diamond

Это алгоритмы, аналогичные «Облаку различий» в Photoshop.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top