![]() |
|
Модераторы: Rickert |
![]()
|
|
| empter |
|
|||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
При построении ландшафта, имеется необходимость в построении карты высот,
с реальной карты местности, кто нибудь видел проги для этого? |
|||
|
||||
| Mephistopheles |
|
|||
|
Бегущий от света ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 15.11.2005 Где: Где нет света Репутация: нет Всего: 6 |
Бери фотку ландшафта, например того же Марса, преводить в чёрно - белый вид и юзай.
А какие проги ты ищешь? --------------------
Ангелы и бесы кружат надо мной.Ангел или бес - делай выбор свой.Вспыхнуть огнём; вознестись до небесДелай выбор свой: ангел или бес?© Mephistopheles, бегущий от света. |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
-------------------- ![]() |
|||
|
||||
| arilou |
|
|||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 6 Всего: 61 |
||||
|
||||
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 3 Всего: 43 |
в каком виде предстваленна эта самая "реальная карта местности"?
Она действительно есть или это пока только абстрактные рассуждения? Это сообщение отредактировал(а) DENNN - 5.1.2006, 14:03 |
|||
|
||||
| empter |
|
||||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
В принципе, да. То есть пока существует некое подобие движка, с построением ландшафта с карты высот, пока работал над движком, грузил тестовый heightmap, нарисованный в фотошопе. Нужен новый heightmap, желательно, чтобы был похож на реально существующую местность.
Смотрел terragen, но без регистрации дают делать только 512х512 карту, а ландшафт предполагает быть большим по площади. |
||||
|
|||||
| Mephistopheles |
|
|||
|
Бегущий от света ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 15.11.2005 Где: Где нет света Репутация: нет Всего: 6 |
Элементарно: карты поверхности Марса. --------------------
Ангелы и бесы кружат надо мной.Ангел или бес - делай выбор свой.Вспыхнуть огнём; вознестись до небесДелай выбор свой: ангел или бес?© Mephistopheles, бегущий от света. |
|||
|
||||
| arilou |
|
||||
![]() Великий МунаБудвин ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2646 Регистрация: 15.7.2004 Где: город-герой Минск Репутация: 6 Всего: 61 |
Ну для домашнего использования пойдет и такой размер. Ведь ее можно масштабировать |
||||
|
|||||
| DENNN |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3878 Регистрация: 27.3.2002 Где: Москва Репутация: 3 Всего: 43 |
||||
|
||||
| Mephistopheles |
|
|||
|
Бегущий от света ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 15.11.2005 Где: Где нет света Репутация: нет Всего: 6 |
Смешно --------------------
Ангелы и бесы кружат надо мной.Ангел или бес - делай выбор свой.Вспыхнуть огнём; вознестись до небесДелай выбор свой: ангел или бес?© Mephistopheles, бегущий от света. |
|||
|
||||
| empter |
|
|||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
DENNN
Вид исходной информации в принципе безразличен, Нашел тут прогу 3Dem называется http://www.visualizationsoftware.com/3dem.html там куча разных форматов, в которых могут хранится карты, тока самих карт на сайте нет, есть куча ссылок, но большинство битые. И потом местность буржуйская
В идеале хотябы квадрат 100km на 100км с детализацией до 3-5м (ну детализация достигается текстурированием, так что это отдельная тема) Это сообщение отредактировал(а) empter - 5.1.2006, 19:56 |
|||
|
||||
| powerfox |
|
|||
![]() I wanna fork() ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3990 Регистрация: 1.10.2005 Где: Санкт-Петербург Репутация: 1 Всего: 97 |
Может быть пригодится - http://www.loria.fr/~rougier/software/hills/
|
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
Давай посчитаем. 100км делим на 3 метра, получаем: 100000 / 3 = 33333.3 То есть количество пикселов в карте высот должно быть 30000 на 30000. Это означает, что массив, содержащий карту высот, должен быть соответствующих размеров. Предположим, что каждая точка в карте высот описывается 16-битным числом в формате с плавающей запятой. Тогда для хранения карты высот потребуется: 30000 * 30000 * 0.5 = 450.000.000 байт То есть 450 мегабайт. Подумай над этим. -------------------- ![]() |
|||
|
||||
| empter |
|
|||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
mr.DUDA
Я имел ввиду немного другое Количество пикселов на карте высот, определяет кол-во вершин на ландшафте, но расстоянием между ними ведь можно управлять, т.е я растягиваю сетку так, что между вершинами у меня к примеру 40 метров, (страдает конечно детализация самой ландшафтной сетки), потом текстурирую, чтобы добиться необходимой детализации текстур. Хотя может что то и неправильно делаю. Дело в том, что движок должен рендерить большие открытые пространства, типо как в авиасимуляторе например. |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
Ну хорошо, допустим сделаем мы 40 метров а не 3. При этом, учитываем что качество результирующей geometry, т.е. 3d-сетки, описывающей ландшафт, будет удовлетворяющим лишь до высоты в 400-500 метров (а ниже - будет куча изломанных линий).
Допустим, что-то мы сможем компенсировать за счёт высокодетализированных текстур. Но для ландшафта крупных размеров требуется текстура довольно высокого разрешения, да не одна, а несколько, т.к. при размножении текстуры получается неприемлемое качество картинки: чем больше повторов на участке экрана, тем более заметным становится то, что текстура повторяется. Наоборот, чем меньше повторов, тем более "растянутой" получится текстура. Это всё действует в случае, когда используется одна текстура. Подсказка: если взять несколько вариаций одной текстуры, которые совмещаются между собой по всем границам, и "налепить" их на ландшафт под разными углами и в разных сочетаниях, получится более реалистичный эффект. Более того: если в одном пикселе смешивать две и более текстуры в зависимости от высоты данной точки ландшафта, и прибавить шум к высоте - получится ещё более реалистичный эффект. Типа, трава переходит в камень, тёмная трава переходит в светлую траву, песок переходит в тёмную траву и т.п. Похожий эффект можно наблюдать в FarCry на первом острове. -------------------- ![]() |
|||
|
||||
| empter |
|
|||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
mr.DUDA
Не понял почему, сетка то регулярная, откуда ломанные линии. По текстурированию со всем полностью согласен, уже сделал splatting на пиксельном шейдере, т.е есть например 4 текстуры, и 4 alphamap, альфа отвечает соответственно за прозрачность каждой текстуры, в определенных местах на ландшафте, каждая текстура повторяется для достижения нужной детализации и это конечно минус, как вариация можно сделать текстуры в зависимости от высоты, затем все текстуры смешиваются. Можно еще по другому, так в первом Battlefield было сделано Накладываем заранее нарисованную одну большую текстуру, и при приближении, когда она начинает размазыватся фильтром, смешиваем ее с Detailed Map, но это еще текстуру надо нарисовать ALL Кстати сейчас работаю над освещением кто-нить знает как лайтмэп рассчитывается? Это сообщение отредактировал(а) empter - 8.1.2006, 20:22 |
|||
|
||||
| mr.DUDA |
|
||||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
При приближении к сетке видимое расстояние между узлами становится таким, что видны переходы между узлами, в виде граней полигонов. К примеру, видны вершины и ломаные очертания холмов. Я говорил о компромиссе между объёмом дисковой и(или) оперативной памяти, занимаемым картой высот и уровнем детализации. 40 метров между узлами сетки - не ахти какое разрешение, если камера на уровне пары метров от земли. Шейдер на асме писал или на чём? Это какой же должна быть текстура по размеру, гы
Я ещё с этим не разбирался, но чую придётся, т.к. если просто затенять полигоны в зависимости от нормали, то не получается эффект самозатенения ландшафта: высокий холм имеет тёмную сторону, но под холмом нет тени от него. А расчитывается, как я подозреваю, лайтмэп заранее. По крайней мере в FarCry именно так. Ещё кстати есть shadowmap, и между ним и лайтмэпом есть какая-то там разница (не вникал, какая именно). -------------------- ![]() |
||||
|
|||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
P.S.
чисто на перспективу: нужно копать в сторону horizon mapping, radiosity, subsurface scattering, photon mapping. -------------------- ![]() |
|||
|
||||
| empter |
|
||||||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
На асме, но он простой За один проход смешиваются 4 текстуры.
Да, надо искать компромисс Добавлено @ 00:42 ЗЫ: Шейдер, если кому интересно:
Ссно можно добавить еще проход рендеринга и смешать еще четыре Это сообщение отредактировал(а) empter - 9.1.2006, 00:45 |
||||||
|
|||||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
[offtopic]
Не подскажешь, где можно почитать подробней про этот ассемблер? Всё, что мне доводилось читать, было про HLSL. [/offtopic] -------------------- ![]() |
|||
|
||||
| empter |
|
|||
![]() Фанат ![]() Профиль Группа: Участник Сообщений: 224 Регистрация: 20.5.2005 Репутация: 1 Всего: 4 |
mr.DUDA
Вообще я сам больше на HLSL ориентируюсь, просто в этом случае готовая техника подвернулась. Splatting применяется сейчас б большинстве игр.
Есть книжка хорошая, на анг. она какраз вся про асм. называется Learn Vertex and Pixel Shader Programming With Directx 9 я отсюда скачивал http://www.realcoding.net/downloads/go/778 Как думаешь, есть вообше разница на чем шейдеры кодить, HLSL медленнее выполняется? |
|||
|
||||
| mr.DUDA |
|
||||||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 7 Всего: 232 |
В курсе
Спасибо
Очевидно, что медленнее. Код, написанный на HLSL, компилируется в ассемблерные инструкции, и даже при всевозможных оптимизациях, почти всегда будет работать медленнее, чем тот же код, написанный вручную на асме под конкретную задачу. -------------------- ![]() |
||||||
|
|||||||
| Maniac |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 27.2.2006 Репутация: 1 Всего: 1 |
что-то не хочет скачиваться, может кто выложит в другое место? |
|||
|
||||
![]()
|
| Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |