StudioMDL (Source)
< Ru
Jump to navigation
Jump to search
- Для руководства по использованию StudioMDL, смотрите Compiling a model
StudioMDL это консольная утилита, используемая для компиляции моделей из промежуточных форматов, экспортированных из программы 3D-моделирования, в бинарный формат .mdl, читаемым движком
Source.
Её можно найти в: ![]()
common\<gamename>\<gamefolder>\bin\studiomdl.exe.
-game. Однако использование ярлыка на рабочем столе по прежнему работает. Это проблема со стороны Microsoft. [нужно проверить в ?]Параметры
Эти параметры требуют QC файл. Все остальные должны быть "за" ними.
studiomdl [опции] <путь к QC>
Основные
-game <gamedir>- Указывает папки контента игры.
-quiet- Убирает некоторые сообщения в консоли, такие как отображение путей поиска
-x360- Включает вывод для Xbox 360, игнорируя Gameinfo.txt.
-nox360- Выключает вывод для Xbox 360, игнорируя Gameinfo.txt.
-nowarnings- Отключает предупреждения.
-maxwarnings <int>- Ограничивает количество выводимых предупреждений.
Анимация
-definebones- Смотрите $definebone.
-printbones- Выводит дополнительную информацию о костях в консоль.
-printgraph- Нужно сделать: Похоже, что выдаёт информацию xnode для каждой ноды
-overridedefinebones- Эквивалентно $unlockdefinebones в QC.
-checklengths- Выводит готовую для движка информацию о кейфреймах для каждой анимации.
Производительность
-fastbuild- Отключает обработку VTX для DX7, DX8, X360 и Software рендера (будет использовать только
.dx90.vtx). Это ускоряет компиляцию. -preview- Отключает триангуляцию модели. Это изменяет параметры рендера модели, вероятнее всего вызывая ухудшенную производительность или поломанный рендеринг в движке.
-fullcollide- Не обрезает сложные модели столкновения (Во всех играх начиная с
используйте $maxconvexpieces). -striplods- Пропускает все $lod команды.
-minlod <lod>- Пропускает все LODы выше заданного (смотрите $minlod).
-mdlreport <path\model.mdl>- Выводит информацию о производительности для уже скомпилированной модели. Для этой команды не требуется QC файл.
-perf- То же, что и
-mdlreport. -mdlreportspreadsheet- Выводит информацию о производительности каждого LOD как таблицу, разделённую через запятые в следующем формате:
Путь к VTX, расширение VTX, номер LODа (1 это корневой lod), количество треугольников, количество проходов отрисовки, количество используемых материаловНужно сделать: "количество проходов отрисовки" это "number of batches rendered", что это значит?
- Должен использоваться с -mdlreport или -perf!
Примечание:Не записывает таблицу в память.
Отладка
-d- Выводит различные glview файлы (по 10 на каждый LOD на каждый VTX файл).
-h- Вывод hitboxов в консоль.
-n- Указывает плохие нормали.
-dumpmaterials- Выводит имена используемых материалы в консоль.
-i- Отключает предупреждения.
-t- Заменяет все материалы на стандартную розово-чёрную клетку.
-parsecompletion- Выводит просто обрабатываемое сообщение об успехе или провале компиляции.
-collapsereport- Выводит информацию о том, какие кости останутся, а какие будут пропущены.
Прочие
-nop4- Отключает интеграцию Perforce. Если для вашей игры/мода настроен Perforce (что маловероятно), вы должны использовать этот параметр.
-verify- Скомпилирует модель, но не запишет результаты в память.
-a <normal_blend_angle>- Сглаживает стороны, угол между которыми равен или меньше указанному. Игнорирует всю информацию о нормалях на всех мешах.
-f(удалено начиная с
)- Переворачивает нормали. Нужно сделать: Что значит "Flip all triangles"?
-vsi <path\[QC|MDL]>- Генерирует VSI файл из QC или MDL файла.
-stripmodel <path\model.mdl>- Облегчает вес модели, удаляя информацию о LODах.
-stripvhv <path\sp_hdr_x.vhv>- Облегчает (VHV) файл, удаляя информацию о LODах.
-makefile- Генерирует простой makefile для дальнейшей компиляции. Также проверяет QC файл на наличие ошибок, компилирует с параметром
-quiet -basedir <path>- Запускает StudioMDL в контексте указанного пути.
-tempcontent <path>- Добавляет указанный путь как путь поиска контента.
Нефункциональные
-r- "Tag reversed". Нужно сделать: И что это значит?
-ihvtest- Вероятнее всего, должен проверять модель столкновений на наличие ошибок физики. Пропускает любой следующий аргумент.
Входные файлы
StudioMDL поддерживает разные форматы: SMD, DMX и OBJ для моделей-референсов, SMD и DMX для скелетной анимации, VTA и DMX файлы для повертексной и мимики.
Counter-Strike: Global Offensive также поддерживает FBX, но с ограниченным функционалом: Мимика напрямую не поддерживается, как и FBX анимации, но SMD/DMX анимации могут быть использованы на FBX модели.
Выходные файлы
mymodel.mdl- Скелет, анимации, bbox и хитбоксы, материалы, список LODов…
mymodel.sw.vtxmymodel.360.vtxmymodel.dx80.vtxmymodel.dx90.vtx- Оптимизированные VTX для software рендера, XBox 360, DirectX 7, 8 и 9 соответственно.
Примечание:Файлы .360.vtxэто просто байтсвапнутые.dx90.vtxфайлы. mymodel.vvd- Оставшаяся независимая повертексная информация, включая UV map
mymodel.phy- Модель столкновений
См. также
- Типичные ошибки StudioMDL
- Crowbar, популярный графический интерфейс для StudioMDL, также поддерживающий декомпиляцию моделей и другие продвинутые функции.
- Studiocompiler, графический интерфейс для StudioMDL.
- GUIStudioMDL, ещё один графический интерфейс.
- Source Model Compiler, веб компилятор моделей и генератор QC файлов.
- Fixing the 5% Weight Bone Link Cull, для Template:SFM