Как сделать 3D модель карты в масштабе 1:1

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 22 окт 2010, 22:41

Доброе время суток.

У меня трудность: необходимо сделать карту в масштабе 1:1 для opensource проекта MMO FPS/RPG игры.
Карта реальная Уральского региона точнее города Первоуральска.
Движок: Unity 3D (terrain можно сделать по RAW 8bit(16bit) но не больше чем 4096x4096)

Попытка решить данный вопрос мной не увенчалась успехом:
Все что имею на компе: Win XP 32 SP3
SAS.Планета
MICRODEM
ArcGIS 9
Global mapper 12
Google Планета Земля
Surfer 9
GeoControl
GoogleMV
MapBuilder
и еще парочка OpenSource программ. (не считая другого ПО связанного с 3D моделированием и графикой)

Так же имеется SRTM (*.asc) файлы все участка карты который нужен.

Сразу оговорюсь я в картостроении ноль, поэтому все что я пытался сделать выдернуть всю карту с разу одним файлом (не вариант: во первых большинство программ ругаются на то, что размер будет галактическим, если учесть что я сразу же пытаюсь сделать масштаб 1:1 и с этой ошибкой закрываются, во вторых я ограничен кусками по 4096px на 4096px, ну и в третьих если я пытаюсь пилить карту кусками Microdem и Global mapper RAW файл делают не совсем такой какой нужен)

Большая просьба сильно не смеяться и не материть.
И если будет подробная инструкция как лучше сделать, буду признателен.

Заранее благодарен.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Максим Дубинин » 23 окт 2010, 19:19

что именно вам нужно на входе в ваш движок?

какие данные у вас уже имеются кроме SRTM?

что по вашему означает масштаб 1:1?
пристегивайтесь, турбулентность прямо по курсу

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 23 окт 2010, 23:32

>>> что именно вам нужно на входе в ваш движок?

одно канальный Raw файл 8 или 16 bit grayscale не более 4096x4096 (на каждый terrain)

>>> какие данные у вас уже имеются кроме SRTM?

имеется так же .hgt

>>> что по вашему означает масштаб 1:1?

по моему это масштаб 1px == 1мм. (раз это 3D Action/FPS то размер карты будет такой как в реальной жизни. Игрок в игре будет идти ровно столько сколько он бы шел сам. И расстояние пройденное им в игре по игровой карте не отличалось бы от расстояния в реальной местности. НО ЭТО В ИДЕАЛЕ).

Хотя как я в первом посте писал я профан в мапмэйкерстве поэтому и обратился к знающим людям т.е. к вам.
Т.е. если вы скажете что не реально такую карту сделать (я имею ввиду в масштабе таком) ну значит масштаб буду менять.

P.S.: знаю что максимальный масштаб который есть по elevation - это 90м и что при увеличении будет много шумов и артефактов на карте. Меня это не пугает потому как поправить проще чем рисовать всю карту от руки.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Максим Дубинин » 24 окт 2010, 17:21

а какой нужен RAW?

есть работающий пример?
пристегивайтесь, турбулентность прямо по курсу

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 24 окт 2010, 22:34

>>>> а какой нужен RAW?
>>>> есть работающий пример?
Да есть TYT RAW 16bit 512x512 grayscale

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Максим Дубинин » 25 окт 2010, 00:25

Чем вы сами такие RAW смотрите?

Вот это похоже на то, что это есть?
Изображение
пристегивайтесь, турбулентность прямо по курсу

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 25 окт 2010, 04:40

>>>> Чем вы сами такие RAW смотрите?
Adobe photoshop или irfanview

Photoshop покажет: Изображение

А IrfanView продемонстрирует:
Изображение

размеры изображения: 513x513
Канал: 1
BPP(Глубина): 16bit

В Photoshop`e сначала откроется черное изображение (что бы увидеть делаем следующее: Меню Изображение > Коррекция > Яркость/Контрастность параметр яркость выставляем в максимум. так 2 раза).

Описание формата:
цвет черный (#000000) - т.е. пол(земля, уровень по горизонту)
цвет белый (#FFFFFF) - т.е. самая верхняя точка по уровню горизонта (скажем вершина горы)

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Максим Дубинин » 25 окт 2010, 05:26

победил вроде в QGIS

Код: Выделить всё

BYTEORDER M
LAYOUT BIP
NROWS 513
NCOLS 513
NBANDS 1
NBITS 16
вот что получается:

Изображение

Так как результат похож, то осталось сделать обратное преобразование, HGT перевести в BIP:
1. Взять матрицы SRTM
2. Если нужно - порезать их на части (исходно они 1024 на 1024 пикселя так что под ваше ограничение пролезают)
3. Экспортировать с помощью gdal в EHdr (rw+v): ESRI .hdr Labelled
пристегивайтесь, турбулентность прямо по курсу

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 25 окт 2010, 05:39

Такой не скромный вопрос а есть может где нибудь формат .hgt и SRTM для разработчиков.
Потому сколько я уже ковыряюсь, то мне проще будет прикрутить к Unity3D сам .hgt c SRTM.

Скармливаеш файлик а он сам тебе бьет их на terrain нужного размера и все хорошо.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Максим Дубинин » 25 окт 2010, 06:01

так HGT это тоже RAW, вот пример заголовка:

Код: Выделить всё

BYTEORDER M
LAYOUT BIL
NROWS 1201
NCOLS 1201
NBANDS 1
NBITS 16
BANDROWBYTES 2402
TOTALROWBYTES 2402
BANDGAPBYTES 0
NODATA -32768
ULXMAP 136
ULYMAP 46
XDIM 0.000833333333333
YDIM 0.000833333333333
пристегивайтесь, турбулентность прямо по курсу

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 25 окт 2010, 12:30

А как бы мне с масштабом поиграть? Это как раз к вопросу об 1:1 ?
Я так понимаю SRTM-90 это 1см - 90метров или я ошибаюсь?!

Алекс
Активный участник
Сообщения: 185
Зарегистрирован: 26 июл 2010, 08:54
Репутация: 30
Откуда: Ногинск

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Алекс » 25 окт 2010, 15:16

Это означает, что один элемент матрицы (грида) равен 90 м. Т.е. на квадратике 90х90м высота принята одинаковой. К масштабу отношения не имеет.

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 25 окт 2010, 15:34

Тогда как сопоставить с масштабом? Текстура с google map у меня выдернута с приближением до 250метров. Как её сопоставить с рельефом? Скажем так как работать с масштабом?

[Сообщение с мобильного устройства] Изображение

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9129
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 748
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение Максим Дубинин » 25 окт 2010, 23:43

что значит "работать с масштабом", "сопоставить с маштабом" и т.д.

поясните, что именно вам нужно сделать?
пристегивайтесь, турбулентность прямо по курсу

GTexan
Новоприбывший
Сообщения: 11
Зарегистрирован: 22 окт 2010, 22:10
Репутация: 0

Re: Как сделать 3D модель карты в масштабе 1:1

Сообщение GTexan » 26 окт 2010, 07:57

Масштаб 1:5000 т.е. в 1см - 5000 метров. Меня интересует масштаб 1:1 т.е. в 1см - 1см(а не 5000 метров).
В итоге что бы получился реальный размер пространства, а не его миниатюрная копия.

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя