XMeshCore — утилита для создания мешей и редактирования высот аэродромов — Создание сценариев

Делаю аэропорт Апатиты, хочу сделать профиль полосы по схеме и выровнять площадку под здание терминала.

Он волшебным образом лежит на очень правильном месте. Даже горбик почти попадает :)
ulmk_1.jpg

ulmk_2.jpg

Тут берём xes http://update.x-plane.com/MeshTool/
Тут hgt http://dds.cr.usgs.g…/SRTM3/Eurasia/
Сразу скажу, что hgt там хреновые — если есть ошибки, MeshTool их не конвертит. Поэтому я брал GEOTIFF из SRTM4, и с помощью Global Mapper вырезал нужный кусок. Если кому то нужно, могу выложить со скринами, как это делать.

Он волшебным образом лежит на очень правильном месте. Даже горбик почти попадает :)

Так и знал, что он в 9 — ке красиво ляжет. Я то, грешным делом, его в 10 ке пытаюсь ваять. За ссылки — спасибо! В мануале написано, что к 10-ке ваша программа
может не подойти, я таки попробую.

Тут берём xes http://update.x-plane.com/MeshTool/
Тут hgt http://dds.cr.usgs.g…/SRTM3/Eurasia/
Сразу скажу, что hgt там хреновые — если есть ошибки, MeshTool их не конвертит. Поэтому я брал GEOTIFF из SRTM4, и с помощью Global Mapper вырезал нужный кусок. Если кому то нужно, могу выложить со скринами, как это делать.

Очень нужно! Было бы замечательно.

Так и знал, что он в 9 — ке красиво ляжет. Я то, грешным делом, его в 10 ке пытаюсь ваять. За ссылки — спасибо! В мануале написано, что к 10-ке ваша программа
может не подойти, я таки попробую.

Да бестолку пробовать,нет ещё нужных инструментов для 10-ки. Да и 10-ки то нет толком,она в бэтто релизовой стадии причём на долго. Стабильно работающих версий нет с момента продажи по сей день. IMHO

Да бестолку пробовать,нет ещё нужных инструментов для 10-ки. Да и 10-ки то нет толком,она в бэтто релизовой стадии причём на долго. Стабильно работающих версий нет с момента продажи по сей день. IMHO

Да, но никто не мешает взять меш из девятки.. Многие же пользуются сценариями из 9ки. Хотя конечно это временно.. Может Laminar сделает хорошую утилиту для редактирования меша.. или хотя бы новый DSFTool.

Так и знал, что он в 9 — ке красиво ляжет. Я то, грешным делом, его в 10 ке пытаюсь ваять. За ссылки — спасибо! В мануале написано, что к 10-ке ваша программа
может не подойти, я таки попробую.

Если начинать меш с нуля, то тут всё равно — 10я версия понимает всё что есть в 9й.. А если брать DSF из 10ки, то тут будут проблемы при конвертации, так как нового DSFTool пока нет.

Да, но никто не мешает взять меш из девятки.. Многие же пользуются сценариями из 9ки. Хотя конечно это временно.. Может Laminar сделает хорошую утилиту для редактирования меша.. или хотя бы новый DSFTool.

Погоду бы я перетащил если-бы это было возможно. А вот глобальные сцены перетаскивать не совсем оправданно,так-как стыки между dsf от этого не пропадают. А из-за них все эти кривые мосты, и дороги уходящие в небо да невидимые стены на пешеходном эшелоне. И плюсов собственно и нет от такого перетаскивания, одни минусы.
P.S. Супник или кто-там всё выравняет просто у него стальные яйца.

А если брать DSF из 10ки, то тут будут проблемы при конвертации, так как нового DSFTool пока нет.

Да нет там никаких проблем. Распаковать, конвертнуть туда-сюда, запаковать.

Да нет там никаких проблем. Распаковать, конвертнуть туда-сюда, запаковать.

Пробовал с Прикаспийской низменностью.. при отрицательных высотах бред получается. После «туда-сюда» там вообще столбы до неба стояли. Как в других случаях, не знаю.. Но всё равно, при генерации меша из SRTM есть только 9точный вариант.

Пробовал с Прикаспийской низменностью.. при отрицательных высотах бред получается. .

В hgt, если правильно помню, отрицательных высот вообще не предусмотрено. Те, сгенерировать не удастся.

В hgt, если правильно помню, отрицательных высот вообще не предусмотрено. Те, сгенерировать не удастся.

Я ничего в этом случае не генерировал и не редактировал.. просто взял квадрат из десятки и прогнал его туда сюда DSFTool-ом.

По поводу отрицательных высот, проверю сегодня.

Эксперименты с Прикаспийской низменностью показали, что отрицательные высоты программа обрабатывает нормально.. проблема с водой.. Если её принудительно не задавать — нет моря))))).. Сразу копнул глубже.. есть идея как вытягивать данные с водой и добавлять в скрипт к меш тулу. Буду продолжать эксперименты в этом направлении.

Действительно, попутал с прямым углом :brrr1: Есть там минус, но с этим минусом работать о-о-очень неудобно

Сразу копнул глубже.. есть идея как вытягивать данные с водой и добавлять в скрипт к меш тулу. Буду продолжать эксперименты в этом направлении.

Там, скорее, сушу вытягивать надо :sarcastic: Погрузил Астрахань в смотрелку и пару минут соображал, что же она мне показала. Одна сплошная вода :wacko:

На подходе версия 2.3 — будет добавлен интерфейс для генерации водной поверхности и ортофотополигонов.

Вот, спасибо!
На выходных буду тестить утилитку!! :yes:

Там, скорее, сушу вытягивать надо :sarcastic: Погрузил Астрахань в смотрелку и пару минут соображал, что же она мне показала. Одна сплошная вода :wacko:

Какую смотрелку? Я тоже хочу глянуть!
Ковырял я и так и эдак эти высоты и ландшафты менял и вообще убирал всё подальше от сима. Одно и тоже то есть баг стабильный. Без папки Global Scenery тоже подкидос шасси заметный,но проехать уже можно. Ландшафты вообще не при чём они просто усугубляют этот баг. Ещё заметил в плохую погоду меньше подкидывает когда без ландшафтов чем в хорошую. Пробовал выровнить dsf от 10ки. Получилось убрать стык но возник огромный бугор,перелом. Это я просто координаты упёр в край dfs например было 47.999999 сделал 48.000000 так что в чём заскок не понятно. Таких дромов ниже уровня моря много есть и -417,5 м ниже уровня моря.Хоть Балтийского хоть Мёртвого. Мелочь но на душе какашка.

Какую смотрелку? Я тоже хочу глянуть!
Ковырял я и так и эдак эти высоты и ландшафты менял и вообще убирал всё подальше от сима. Одно и тоже то есть баг стабильный. Без папки Global Scenery тоже подкидос шасси заметный,но проехать уже можно. Ландшафты вообще не при чём они просто усугубляют этот баг. Ещё заметил в плохую погоду меньше подкидывает когда без ландшафтов чем в хорошую. Пробовал выровнить dsf от 10ки. Получилось убрать стык но возник огромный бугор,перелом. Это я просто координаты упёр в край dfs например было 47.999999 сделал 48.000000 так что в чём заскок не понятно. Таких дромов ниже уровня моря много есть и -417,5 м ниже уровня моря.Хоть Балтийского хоть Мёртвого. Мелочь но на душе какашка.

Тестировал программу с 10кой. Такое не только при отрицательных высотах.. Мы явно чего-то не видим.

1.jpg

Это не полёт — так я загрузился на ВПП. Меш сгенерирован в MeshTool без правки в моей программе.

P.S. Продолжаю тестить в 9ке. Пока ещё не готов выложить новую версию.

Мы явно чего-то не видим.

Об её существовании я тоже догадываюсь. Да есть что-то что плевать хотело на папку Global Scenery и всё что в ней находиться.

Как я понял Остин мои видео уже видел,может и супнику сказал! Так что флаг им в руки и вот ещё Gif в подарок! На сайте Avsim больше 4.60mb не разместишь,а ещё один из самых дорогих сайтов в некотором рэйтинге считается! У себя покажу. http://nikolaevich-s…y.blogspot.com/ :rolleyes: Там и цену можно вычитать. Так, я опять под мухой!

MeshTool — это страшная тайна Бена Супника. Все версии дают разный результат. Столкнулся вот с таким ограничением

1.jpg

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

Печальный порт узнаю. Rhard как появится инструмент думаю мне скучать не придётся,всё вспахаю и переделаю. Там страх,ну была 9ка всё в норме,во всяком случае меня устраивало. Взял перехреначил, кому подфортил непонятно,глаза есть вообще или в пустыне его дом…

Программа под X-Plane 9. Когда будут утилиты под 10ю версию, тогда посмотрим.. Может ничего не нужно будет уже.

Добавил оверлей

2.jpg

Написал первую часть туториала:

Итак, при разработке программы я достиг промежуточного результата и могу написать небольшой туториал, который будет состоять из теоретической части, части посвящённой «добыче» необходимых файлов ресурсов и, непосредственно, работе с программой.

1. Система сценариев X-Plane 9

В X-Plane 9 все сценарии запакованы в файлы DSF. Эти файлы сердце системы пейзажей X-Plane. Они содержат всю информацию о построении сценария, будь то высота местности, дорожная и железнодорожная сеть, водоемы, леса и т.д. Есть два типа DSF файлов — оверлейные (overlay) и полные (full). Оверлейные DSF файлы — это файлы созданные, например, в OverlayEditor. Они не могут содержать высотной сетки. Полные файлы содержат, ко всему прочему, ещё и базовый меш ландшафта. XMeshCore, являющаяся первоначально программой для обработки меша, работает, соответственно, только с полными DSF файлами. Как загружает X-Plane файлы сценариев? XP сканирует папку Custom Scenery в алфавитном порядке, и подгружает информацию из разных оверлейных DSF, которых теоретически может быть неограниченное число. Но только как XP найдёт полный файл DSF, загрузка на этом прекратится. Таким образом, если Вы используете другие оверлеи, соответствующие вашей области, нужно обратить внимание, что бы их папки были расположены раньше в алфавитном порядке, чем папка с полным DSF. Типичная структура папки Custom Scenery выглядит так:

—CustomScenery
——Scenery1

——Scenery2
——Scenery3
——Scenery4
——LFLJ_Overlay_1 (оверлейный сценарий 1)
———Earth nav data
————+40+000
—————+45+006.dsf (оверлейный DSF)
———polygons
———objects
——LFLJ_Overlay_2 (оверлейный сценарий 2)
+
——LFLJ_Overlay_x (оверлейный сценарий 3 и т.д.)
+
——LFLJ_Terrain (полный сценарий с мешем, идёт в последнюю очередь!)
———Earth nav data
————+40+000
————— +45+006.dsf
(полный DSF файл, созданный в XmeshCore)

———terrain
———— Ваши .ter и .dds файлы текстур
——Scenery5
——Scenery6
——Scenery7
+

В этом туториале я буду создавать полный DSF файл без каких-либо объектов, которые обычно создаются отдельно в OverlayEditor, osm2xp, g2xpl. Соответственно, Вы должны будете позаботиться об этом сами.
Ещё следует упомянуть, что моей программой я не могу выйти за рамки утилиты MeshTool, и, соответственно, не могу предоставить всеми желанные дополнительные возможности по созданию сценариев. Программу нужно рассматривать как некий помощник для уже знающих и имеющих опыт работы с утилитой MeshTool людей.
При всём при этом возможно, используя не совсем документированный путь, изменять высоты в нужном месте, передавая MeshTool заведомо фейковые данные.

2. Добыча информации для MeshTool

Что нам будет нужно? Во-первых нам нужно достать данные высот для нашего квадрата. Сразу хочу сказать, что в XP9 можно создавать меш только для всего квадрата 1 на 1 градус целиком, что, конечно, является большим недостатком. Поэтому сразу необходимо подумать о том, какие аэродромы и участки будут интересовать нас в данном квадрате ещё. Пока программа рассчитана на обработку только одного участка, но если разобраться, ничто не мешает склеить файлы скриптов для разных участков и потом несколько раз прогнать dsf для изменения высот в соответствующих местах.
MeshTool работает с несколькими видами данных. Для меня оптимальным показался следующий вариант:

  • Самые последние данные ASTER GDEM доступны на сайте http://www.gdem.aste…r.jp/search.jsp Там очень простая регистрация.

​Tutor1.jpg

После выбора необходимых квадратов переходим на страницу скачивания. В итоге получаем 30 метровый меш в таком виде:

Clipboard02.jpg

Нам нужен только _dem.tif. Это GEOTiff формат.

2) Если будем делать воду, нам нужен файл водной поверхности. В SRTM4 данных есть необходимые нам шейпфайлы. На всеми любимом трекере можно найти эти данные по запросу «SRTM». Там квадраты большей площади, и другой нумерации, но это нам не помешает. К сожалению там отсутствуют слишком северные и слишком южные широты, но думаю где-то в сети можно найти и их. Что получаем:

Clipboard03.jpg

Все четыре файла представляют собой один пакет, поэтому необходимы.

3) Если будем использовать фотоподложку, качаем гугловские снимки. Я использую satmapGPS — то же, что и SASPlanet.

Clipboard05.jpg

Формат вывода png. Обязательно отметить создавать *.map файлы привязки. Я буду делать подложку для всего квадрата. Использую уровень 16. Отмечу, что можно делать фотоподложку и не на весь квадрат, так же как и использовать другой уровень чёткости, но не забывать о объёме полученных текстур. Координаты я выбрал немногим более, что бы при разбиении на 2048×2048 тайлы, гарантированно получить полное покрытие. На данном этапе размер тайлов не имеет значения — можно выгрузить и одним файлом, если подложка не большая. В таком случае даже удобнее будет редактировать в Photoshop. Итак, получаем файлы текстур:

Clipboard07.jpg

4) При одновременном использовании и воды и подложки, подложка закроет воду. Следовательно, те места, где мы хотим увидеть настоящую воду, необходимо в фотошопе сделать прозрачными. Я сам это пока не проделывал.

5) Открываем Global Mapper, надеюсь Вы его уже установили)). Первым делом разберёмся с высотами. Не очень хочется использовать GEOTiff сразу для MeshTool, поэтому переконвертируем его в hgt. Переносим на окно программы (она умная, обойдёмся и без меню файл) наш файл xxxx_dem.tif из первого пункта. Делаем экспорт в hgt:

Clipboard09.jpg
Clipboard10.jpg
Clipboard11.jpg

На всякий случай указываем границы экспорта, как указано выше. Получаем hgt файл:

Clipboard12.jpg

6) Теперь можем очистить рабочее пространство Global Mapper и переносим, описанным выше способом, на окно файл *.shp из второго пункта. Если всё ОК, видим нашу воду.

Clipboard13.jpg

Достаточно перетягивать только *.shp файл, но остальные три должны быть в папке! Так как сегмент данных из SRTM4 занимает большую площадь, можно обрезать только нужные нам данные. Теперь посмотрим поближе:

Clipboard14.jpg

так выглядит вода — она привязана к пиксельной сетке. Нам необходимо её сгладить — для этого входим в режим дигитайзера и выделяем все наши полигоны:

Clipboard15.jpg

Потом используем сгладить и упростить. Оставлю Вам поэкспериментировать с этими параметрами:

Clipboard16.jpg

Следует сказать, что можно совместить этот пункт со следующим, то есть открыть в программе ещё и фотоподложку — тогда легко увидеть места, нуждающиеся в обработке.
Итак, после окончания обработки, делаем экспорт обратно в шейпфайл:

Clipboard17.jpg
Clipboard18.jpg
Clipboard19.jpg
Clipboard22.jpg

Можно оставить границы файла как есть -MeshTool обрежет ненужные области. В итоге получаем четыре новых файла:

Clipboard23.jpg

На скриншоте у меня такой же размер файла, так как я его не обрабатывал.

7) С фотоподложкой поступаем таким же образом — выделяем все файлы png, и переносим в Global Mapper. Если в папке были файлы *.map, то координаты привяжутся автоматически:

Clipboard24.jpg

Для привязки координат к текстурам и получения файлов *.ter в MeshTool удобнее использовать GEOTif. Поэтому делаем экспорт:

Clipboard25.jpg
Clipboard26.jpg
Clipboard27.jpg
Clipboard01.jpg
Clipboard02.jpg

Важно установить разрешение равное степени 2. Лучше 2048. В итоге получаем набор tif
файлов с координатной привязкой внутри:
Clipboard03.jpg

Почему используем фотоподложку в полном DSF файле а не в оверлее? Многие источники указывают, что производительность в таком случае будет выше. Фототекстуры в оверлее я использую только локально, что бы закрыть небольшую площадь.

Продолжение следует.