Вопросы к ANRI — Создание сценариев

Ответов: 41

Так как вопросы по созданию сцен для MSFS2004 не прекращаются и задаются в разных темах, подчас засоряя их и затрудняя нахождение ответов, то решился создать отдельную тему.
К большому сожалению, личная переписка ограничена в размерах и недоступна остальным.
Вопросы для меня задавайте здесь. Постараюсь ответить на все, на которые знаю ответ. На какие не смогу ответить — попрошу ответить знающих.
В планах, собрать здесь ссылки на мои предыдущие ответы в разных темах. Поэтому, прошу не цитировать это первое сообщение в этой теме, дабы оставить мне возможность его редактирования.

Ниже привожу ссылки на основные вопросы по созданию сцен и некоторые часто задаваемые вопросы.
Ссылки пока присутствуют не на всех пунктах, но со временем всё наладиться.
На некоторых пунктах будет прикреплено по несколько ссылок.
Список вопросов будет расширяться.

Понимаю, что один ответить на на все вопросы не смогу, поэтому прошу всех кому эта идея со структурированным сборником ссылок понравилась — подключайтесь! Делитесь ссылками.

ground-poly-layers.gif

 

Создание сценариев

 
 

С чего начать?

Террайн

Spoiler

Автоген FSX – это очень просто
AGenT и Annotator
Скачать AGenT
Annotator или Agent?
Растительность
Здания
Для автогенных зданий, можно создавать и назначать индивидуальные текстуры
Ставим города с помощью AGenT
Библиотечные объекты
Фонари на дорогах
Расстановка автогенных фонарей
XML объекты
О правке файла default.xml
Рекомендации и мануалы

Извиняюсь за оффтоп. ANRI, где можно почитать о том, как создавать текстурный лист в SketchUp? Вроде всё меню просмотрел. Может это как-то по другому называется?
Изображение

SketchUp не может создавать текстурные листы. Но можно в нём текстурить отдельными текстурами и цветами — потом экспортировав модель в формате *.dae и импортировав её в ModelConverterX, с его помощью, открыв Minimize Drawcalls, удалить дубликаты одинаковых текстур, собрать разные цвета на один текстурный лист, собрать несколько разных текстур в один текстурный лист:

20110503-182525.jpg

Хотя, несомненно, чем доверять универсальной программе, лучше это сделать всё самому и текстурить в том же SketchUp уже готовым текстурным листом, хотя минусы у него в этом есть…

Для получения первичных знаний о том как компонуются текстурные листы — стоит посмотреть на опыт других сценаристов. Открываем текстуры, смотрим, изучаем, анализируем плюсы и минусы, делаем выводы, учимся…

Сообщение отредактировал ANRI: 03 May 2011 — 18:40

Спасибо

Вопросы моделинга и текстурирования взаимосвязаны и от их грамотного решения значительно зависит их работа в сцене.
Достаточно подробно, эти вопросы освещены в мануале Arno Gerretsen Моделирование и текстурирование для оптимальной производительности.
Там же есть весьма полезные ссылки на статьи Adrian Woods.

Сообщение отредактировал ANRI: 20 February 2013 — 14:52

А можно ли задавать вопросы по сценам для FSX?

А можно ли задавать вопросы по сценам для FSX?

Можно, если решения этих вопросов аналогично FS2004.

Логично предположить, что если известно решение и тем более его аналогичность другой версии, то задавать вопрос нет никакой необходимости :)

Перейду к конкретике.
С появлением в MCX возможности ставить на модели platform, я этим активно стал пользоваться. Но не всегда успешно. Оказалось почему-то наличие в модели твердой поверхности наземный трафик в симе видит избирательно. Я делаю город Красноярск и много использую дефолтные объекты. Один из мостов, визуально похожий на красноярский, взял из дефолтного Лондона, он является целым — весь мост один объект. На него platform удалось сделать легко, как на горизонтальные, так и на наклонные поверхности. На крышу собственной модели здания это было тоже легко. Но вот часть других мостов у меня собраны из «блоков», которые содержатся в дефолтной bridges.bgl. В MCX там тоже спокойно присваиваются platform на плоскости. Но почему-то на каждую плоскость по 3-4 platform. Пробовал оставлять их все, пробовал только одну — трафик их не видит, едет под мостом. Разумеется, экспортировал в новые mdl, менял GUID, собирал в свою библиотеку наравне с остальными объектами, заново ставил в сцену… Есть ли решение этой проблемы? Или таким блочным конструкциям добавить твердость не выйдет?

С появлением в MCX возможности ставить на модели platform, я этим активно стал пользоваться. Но не всегда успешно. Оказалось почему-то наличие в модели твердой поверхности наземный трафик в симе видит избирательно. Я делаю город Красноярск и много использую дефолтные объекты. Один из мостов, визуально похожий на красноярский, взял из дефолтного Лондона, он является целым — весь мост один объект. На него platform удалось сделать легко, как на горизонтальные, так и на наклонные поверхности. На крышу собственной модели здания это было тоже легко. Но вот часть других мостов у меня собраны из «блоков», которые содержатся в дефолтной bridges.bgl. В MCX там тоже спокойно присваиваются platform на плоскости. Но почему-то на каждую плоскость по 3-4 platform. Пробовал оставлять их все, пробовал только одну — трафик их не видит, едет под мостом. Разумеется, экспортировал в новые mdl, менял GUID, собирал в свою библиотеку наравне с остальными объектами, заново ставил в сцену… Есть ли решение этой проблемы? Или таким блочным конструкциям добавить твердость не выйдет?

Тонкость вопроса в этом случае как раз и заключается в «тонкостях» взятых моделей и моделинге вообще.
И здесь нет различий для версий сима (различия лишь в формате GUID’ов).

Свойства platform присваиваются каждому фейсу (треугольнику), поэтому неудивительно, что у Вас на каждую плоскость создаётся по 3-4 фейса со свойствами platform.
Кстате, заметьте — свойства платформ могут быть созданы на горизонтальных фейсах у которых нормали направлены не только вверх, но и вниз (потолок). В этом случае, platform будет создана, но она не будет «держать» сверху…

Прежде чем добавлять моделям platform, а тем более после уже совершённых неудачных попыток, нужно изучить эти модели, вникнуть в их конструкцию. Нельзя слепо доверять всем и вся — всё нужно проверять и быть уверенным в них как «в своих».
Для детального изучения «чужой» модели, я использую все «подручные инструменты»: MCX, SketchUp, GMax. «Понять» модель также помогает изучение её текстур — зная принципы мапинга, легко догадаться как затекстурены полигоны и какие они.
В любом случае, используйте «чужие» модели «как есть», а если есть желание в них покопаться, то разбираем их «по косточкам»…

Сообщение отредактировал ANRI: 04 May 2011 — 13:34

Свойства platform присваиваются каждому фейсу (треугольнику), поэтому неудивительно, что у Вас на каждую плоскость создаётся по 3-4 фейса со свойствами platform.

Вот тут стоп. Поначалу в MCX при добавлении platform они идут «одна штука той формы, какой была плоскость». То есть хоть прямоугольник, хоть вообще фигура с дырой в центре — при выделении platform оно выделяется как один объект. Когда их несколько — они наслаиваются друг на друга не меньше трех одной той же формы и размера.
На фейсы все это разбивается только если экспортированную модель вновь открыть в MCX. Тогда там уже не 3-4, а десяток-полтора именно треугольников.

Но это так, к слову пришлось. За совет спасибо, попробую поизучать на досуге как же они сделаны.

Но это так, к слову пришлось. За совет спасибо, попробую поизучать на досуге как же они сделаны.

Изучать тонкости — лучше по SDK. Открываем SDK, открываем GMax и разбираемся в деталях на примерах… А хвататься за MCX как за последнею соломинку… и потом спрашивать: «- Что это было?» :blink:

Кстати, MCX не разбивает модель на фейсы — он также как и FS только «считывает» текстурные вершины и… для «полноты информации» рассказывает о количестве фейсов.
Это ещё и повод подумать о полном отсутствии необходимости коллапсить вершины…

P.S. А вот SDK по поводу platform написано очень коряво, сам сутки просидел и в конце концов разобрался методом тыка… Поэтому если интересно, то проще прочитать здесь: http://www.avsim.su/…ost__p__1756770

Сообщение отредактировал ANRI: 04 May 2011 — 14:45

ANRI, подскажите, как сделать так, чтобы полигоны Сбидера ложились поверх полигона фототера от стандартного ресампла от СДК? Вопрос возник потому, что мне пока не удается добиться такой точности расположения карты в Сбилдере и соответственно компилинга ее фототера в сим, как для ресамплинга СДК, а так же нет связи с симом, видимо из-за установленной версии FSUIP v3.99. Читал что нужна не выше 3.90

Сообщение отредактировал Virpil: 05 May 2011 — 14:19

… как сделать так, чтобы полигоны Сбидера ложились поверх полигона фототера от стандартного ресампла от СДК?

Никак!

Поверх фототерра «от Resample SDK2004» можно положить только плоские наземные полигоны-объекты, которые компилятся gamepck2002 или ModelConverterX.

Террайновые линии и полигоны «от SBuilder» можно положить сверху (6-ой слой и выше) только на лэндклассы или фототерр «от SBuilder».

Вопрос возник потому, что мне пока не удается добиться такой точности расположения карты в Сбилдере и соответственно компилинга ее фототера в сим, как для ресамплинга СДК

В чём проблема? В SBuilder те же самые координады привязки…
Другое дело, чтобы SBuilder нарезал фототер, карта должна обязательно перекрывать внешние границы сетки LOD13 для выбранной области нарезки. Хотя бы на пиксель (5 метров)..

а так же нет связи с симом, видимо из-за установленной версии FSUIP v3.99. Читал что нужна не выше 3.90

Это точно. У меня вон какой древний и никаких проблем с конектом:

********* FSUIPC, Version 3.48 by Pete Dowson *********

Сообщение отредактировал ANRI: 05 May 2011 — 14:48

Ясно. То есть получается, что по тем же координатам привязки фототер сбилдера ляжет точно так, как и от стандартного ресампла СДК. Значит я что-то неправильно делаю, так как с помощью Вашей таблицы, от СДК фототер ложится точно на афкад, а от Сбилдера по тем же коорд., и по тому же исходнику карты, — чуть Северо-Западнее и соответственно афкад и сцена кажутся сдвинутыми. Буду искать причину, спасибо.

Сообщение отредактировал Virpil: 05 May 2011 — 15:39

Буду искать причину, спасибо.

Причина только одна — координаты. Проверь их формат и каждую цифру.

ANRI, подскажите пожалуйста, существует ли программа подобная tmfviewer SDK, только с функцией удаления не нужных пользователю VTPP полигонов из BGL-файлов?

Сообщение отредактировал Virpil: 06 May 2011 — 04:36

ANRI, подскажите пожалуйста, существует ли программа подобная tmfviewer SDK, только с функцией удаления не нужных пользователю VTPP полигонов из BGL-файлов?

SBuilder. См.: http://www.avsim.su/…post__p__954349 сообщение #665

Сообщение отредактировал ANRI: 06 May 2011 — 10:44

Спасибо, ANRI.

Сообщение отредактировал Virpil: 06 May 2011 — 14:02

Однако! Выручаете, ANRI :) Травка «вернулась» на все дромы Приморья скомпиленные в один VTPP.BGL Виталием. Задачей было убрать этот лэнд-класс с Кневечей. Еще раз бдагодарю!

В .asm файле созданым MakeMDL от геймпака 2002 из Х-файла, есть возможность править (назначать) полигону нужный слой. Ссылку Вы приводили выше.
Вопрос:
Есть ли такая возможность для .asm файла полученного путем MakeMDL от геймпака 2004 напрямую из gmax ?

Сообщение отредактировал Virpil: 08 May 2011 — 12:47

Тему однозначно прикрепить, чтобы не потерялась

Вытащить из Crysis, засунуть в сим и «щчупать». Скрины приложил, все экспортируется без проблем.

Gmax тоже не робит… :)

Вытащить из Crysis, засунуть в сим и «щчупать».

Что такое Crysis? Где его взять?

Вот моделька пальмы в MDL.

Crysis.

Мда, уж… пальмочка…
— 1567 текстурных вершин
— 3 drawcalls
— текстурные листы (с альфой!) 256х1024 и два по 1024х512
— крешбоксы присутствуют
… это всё слишком «не для FS»… Ещё анимации её не хватало…

Сейчас посмотрю Crysis…

Тем не менее, ажиотаж вокруг Crysis велик, благодаря одному мощному фактору — графика. Картинка, выдаваемая Cry Engine 2, отличается выдающейся технологичностью, детализацией и дальностью прорисовки. Джунгли в исполнении Crytek получились почти настоящими, густыми, сочными. Среди многообразия растущих деревьев валяются поваленные стволы, иссохшие ветви, листья, камни. Стоит немного пройти, как глаз искренне радуется веселому водопаду с легкой радугой над ним. На берег моря выкатываются тяжелые волны, а вдалеке уходят в небо величественные горы, окутанные туманной дымкой… И даже как-то грустно осознавать, что у Crysis совсем нет конкурентов по графике — ни сейчас, ни в ближайшем будущем.
Разработчики уделили огромное внимание природе, проработали каждую мелочь, оживили ее ползающими, бегающими зверьками, чтобы не возникало отторжения — на самом деле виден живой, райский уголок. Плюнуть бы на приказы начальников, своротить несколько деревьев, сложить хижину у океана и устроить себе небольшой отдых, отбирая припасы у местных жителей. Впрочем, за стоимость компьютера, который способен продемонстрировать Crysis во всем великолепии, вполне можно устроить себе реальный отпуск в тропиках. И здоровее, и удовольствия несравнимо больше.
Игра разрабатывалась, так сказать, «на вырост» — увидеть ее во всей красе и с достойной производительностью можно будет только на следующем поколении видеокарт. Или через поколение — как повезет. На нашей тестовой системе (Intel Core 2 Extreme QX6850, GeForce 8800 GTX, 2 Гб DDR2-800) с комфортом удалось поиграть только на High настройках. И то бывали места, где частота кадров проседала до неприличного уровня — почти слайдшоу. Very High настройки, которые по умолчанию доступны пользователям Windows Vista, включить можно только для того, чтобы посмотреть на возросшую детализацию, дальность прорисовки, объемные солнечные лучи, более мягкие тени. Посмотреть, и выключить — плавать в желе до самого финала как-то совсем не тянет.

Сообщение отредактировал ANRI: 15 May 2011 — 23:00

Я «высаживал» в сим дуб, состоящий из 9 мдлок, детализация до листа, примерно 400 000 полигонов получалось, емнип. 12 дубов по 400 000 полигонов на пятачке 20 на 20 метров… и нормально, даже микрофризов не было.

Подскажите по GMAX, когда я нажимаю на export, програмка которая создает MDL атоматом конвертирует и исчезает с экрана, я не могу внести в нее параметры, т.к. при нажатии кнопки сохранить она за секунду копелирует и пропадает….как сделать так чтоб она после нажатии сохранить в закладке Export появилась на экране и дожидалась моей команды на копеляцию а не делала это автоматически?

Подскажите по GMAX, когда я нажимаю на export, програмка которая создает MDL атоматом конвертирует и исчезает с экрана, я не могу внести в нее параметры, т.к. при нажатии кнопки сохранить она за секунду копелирует и пропадает….как сделать так чтоб она после нажатии сохранить в закладке Export появилась на экране и дожидалась моей команды на копеляцию а не делала это автоматически?

GMAX сам не компилирует. Gamepack (2002 или 2004) формирует пакет данных (модель и её мапинг) для компиляции MDL-файла с помощью makemdl.exe.
Останавливать этот процес незачем, если не нужно вносить никаких изменений. А вот параллельно с MDL-файлом сформировать ASM-файлы, в которые вносятся изменения, можно открыв файл makemdl.cfg и добавив в разделе [Options] строку с Keep=1

В файле *.asm содержится общая информация о объекте и ссылка на файл _0.asm, в котором находится информация о геометрии объектов, материалах, анимации и т.д.
После внесения изменений, из данных ASM-файлов нужно собрать MDL-файл.
Для этого используется bglc_9. Перетягиваете на него файл .asm и получаете MDL-файл.

Андрей, там можно настроить компилирующую ферму. Тогда можно нужные галки ставить на вкладках. Кирилл описывал этот процесс тут для компиляции подсветки в ВК. Но я успешно использую ее и при компиляции сценарных файлов. Мы ж не знаем для каких целей пользователю понадабилось решение этого вопроса.

Сообщение отредактировал Virpil: 28 May 2011 — 10:14

Андрей, там можно настроить компилирующую ферму. Тогда можно нужные галки ставить на вкладках. Кирилл описывал этот процесс тут для компиляции подсветки в ВК. Но я успешно использую ее и при компиляции сценарных файлов. Мы ж не знаем для каких целей пользователю понадабилось решение этого вопроса.

Не вопрос…

Андрей, там можно настроить компилирующую ферму. Тогда можно нужные галки ставить на вкладках. Кирилл описывал этот процесс тут для компиляции подсветки в ВК. Но я успешно использую ее и при компиляции сценарных файлов. Мы ж не знаем для каких целей пользователю понадабилось решение этого вопроса.

Спасибо большое!! Именно это мне и нужно было, ставить галки на вкладках при компеляции. Спасибо Анри за подсказку с asm файлами, вроде все работает))

Вопрос: как лучше поступить:
Имеется модель: 2 drawcalls, 5212 triangles, 9104 texture verticles, дальность 10 км.
Модель упрощаться не будет. Хотел вставить лод, дабы большая часть (по числу вершин, треугольников) появлялась при приближении на 5 км, но даже LOD_099 не отображается так как модель большая (2,8 км в ширину), только LOD_100 виден.
Теперь что оптимальнее:
1. оставить всю модель на 10 км или
2. разбить её на две модели первая 2 drawcalls, 2134 triangles, 2948 texture verticles, дальность 10 км
и вторая 1 drawcall, 3078 triangles, 6156 texture verticles, дальность ~5 км ?
Модель будет находиться под глиссадой(1.5 км от порога)

Александр, тут теория пока не даёт ответа… :unsure:
Но, давай рассуждать.

Такой большой по размеру объект стоит ли вообще ограничивать в видимости на 10 км? Думаю, что нет.

Если по второму варианту, то опять вопрос — с какой дистанции будут видны все 3078 triangles первой модели? Вот это и будет дистанция для первой модели. Ну, а для второй максимально упростить и не ограничивать по дальней дистанции. Хотя, конечно минимальное значение должно быть указано, чтобы отключить её и перейти к отображению первой модели (при приближении, или наоборот при отлёте).

Больше склоняюсь ко второму варианту, основываясь на общих догадках о самой модели — увидеть бы модель, тогда может и решение будет другим (третьим вариантом).

Сообщение отредактировал ANRI: 01 June 2011 — 00:48

Второй вариант предполагался: 1я модель видна при 0-10~15 км, 2я модель при 0-5 км, то есть модели дополняют друг друга, исходная модель просто разделена.
Ссылка на модель отправлена в личку

Второй вариант предполагался: …то есть модели дополняют друг друга, исходная модель просто разделена.

Вот мой вариант.
Текстурные листы (листики) — маленькие и это хорошо, модели — простенькие и это хорошо. В общем даже если ничего не упрощать и не назначать условий — для сима это не страшно. Но если заняться рационализацией, то:
— скомпилить входящие объекты на 4-5 групп и для каждой задать условие видимости до 5 км — дальше уже их не видно будет;
— а вот арки (фермы) лучше сделать библиотечными с заданием условия видимости порядка до 1 км и расставить их по сцене как библиотечные.
Кстати, у меня арки есть автогенные в default.xml, но из библиотеки их можно расставить и как библиотечные. Ты, кажется даже для них в текстурах мипмапы правил… Да и полегче они.

Сообщение отредактировал ANRI: 01 June 2011 — 01:43

Насчёт арок понятно.
по сравнению с вашими, арки тяжелее всего в 1.5 раза, но зато объёмные со всех сторон
А с какой целью разбивать жд вагоны на группы? дальность 5 маловато, до 10 для них в самый раз — длина вагонов 4 км какраз поперёк глиссады, и их вобщем видно а дальше 10 км, но уже не различим объем, а просто темными полосками. Для больших мониторов (1920) необходимая дальность пропорциональна разрешению.

Анализ моделей объектов сцены UUEE_2011 SVO

Основной инструмент: ModelConverterX
Скачать крайнею версию: http://agerrius.home…odelConverterX/
Руководство: http://www.fsdevelop…ModelConverterX
Форум: http://www.fsdevelop…isplay.php?f=87
Личный блог ARNO: http://msmvps.com/bl…en/default.aspx
Видео уроки: http://www.fsdevelop…ead.php?t=49769

Начну по порядку. Импортирую uuee1.bgl.
Покрутил, посмотрел со всех сторон — вроде всё хорошо…

20110601-234423.jpg

Посмотрим, что у неё с каркасом модели. Как правило, в каркасе привлекает внимание «сгустки» линий и полигонов там, где их не должно вроде быть.
И вот началось… Что там?

20110601-234647.jpg

А там то ли крыша вниз провалилась, то ли стены высоки. В принципе, в этом случае — это влияет лишь на визуалку, но стоит обратить внимание и поправить.

20110601-235125.jpg

Дальше смотрю информацию об объекте. Тут, если больше одного drawcalls (количество материалов = текстурных листов и диффузионных цветов) — это сразу должно настороживать. Тут их уже два для такого «нехитрого» объекта…

20110601-235431.jpg

Посмотрим, что это за два материала и где они применены на этом объекте.
Открываю редактор материалов. Так, это два текстурных листа, диффузионных цветов не применяется — уже хорошо.
Выбираю первый материал. Им затекстурены все стены, но… 60% листа не заполнены! — это плохо.

20110601-235909.jpg

Выбираю второй материал. Им затекстурены все крыши, но… 90% листа не заполнены — это совсем плохо

20110602-000023.jpg

Сведение этих двух листов в один, сократит в 2 раза drawcalls, т.е. сделает модель примерно в два раза легче!

Заодно посмотрел там же и увидел отсутствие ночных текстур… Видимо не нужны? Думаю — необходимы.

20110602-000201.jpg

Посмотрим на размер текстурных листов в редакторе текстур. Вот так уж точно, никаких FPS’ов не будет… Оба листа по 1024х1024, да ещё незаполненные.

20110602-000303.jpg
20110602-000337.jpg

В этом случае можно не только объединить два в один, но и поместить всё (при том же разрешении) на лист 1024х512. Т.е. площадь («размер») всех листов сократиться в 4 раза.

Итого: 1/2 * 1/4 = 1/8 … Эту модель можно облегчить примерно в 8 раз!

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

Сообщение отредактировал ANRI: 02 June 2011 — 10:00

Импортирую uuee2.bgl.
Включаю режим фейс рендер.
Тут понятно — асфальт всей сцены.

20110602-014016.jpg

Один drawcall одним листом 512х512. Нужно будет посмотреть количество повторов этой текстуры — тоже может значительно утяжелить модель…

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

20110602-013909.jpg

Думаю, можно сократить их количество — по всему асфальту много «набежит».

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

…арки тяжелее всего в 1.5 раза, но зато объёмные со всех сторон

С какого расстояния виден этот объём? Смысла не вижу в таком «объёме», но даже если и оставить их такими, то лучше библиотечными с ограниченной видимостью.

А с какой целью разбивать жд вагоны на группы? дальность 5 маловато, до 10 для них в самый раз — длина вагонов 4 км как
раз поперёк глиссады, и их вобщем видно а дальше 10 км, но уже не различим объем, а просто темными полосками.

Если «как раз поперёк глиссады» и кататься там из любознательности никто не будет, то и разбивать на группы нет смысла…

Андрей, подскажите пожалуйста, где почитать о создании ночных текстур? Интересует не столько процесс фотошопа, сколько последовательность действий в г-максе. А именно нало ли как-то назвать материал, и к чему прицепить текстуру? Догадываюсь что нужно использовать галку Self-illumination и задействовать текстуру на нее?

Интересует не столько процесс фотошопа, сколько последовательность действий в г-максе. А именно нало ли как-то назвать материал, и к чему прицепить текстуру?

Скачиваем GmaxSceneryTutorial_ru — русский перевод GMAX SDK.
Открываем документ и читаем стр.19-23

Также, ночную текстуру можно добавить в модель и после экспорта мдлки из GMax — или в MDL_tweaker, или в ModelConverterX.