Ru/StudioMDL (Source): Difference between revisions
< Ru
		
		
		
		Jump to navigation
		Jump to search
		Darkness8163 (talk | contribs) m (Исправлено описание -nop4)  | 
				m (minor spelling mistak 😨)  | 
				||
| Line 16: | Line 16: | ||
; <code>-game <gamedir></code>  | ; <code>-game <gamedir></code>  | ||
: Указывает   | : Указывает папку контента игры.  | ||
; <code>-quiet</code>  | ; <code>-quiet</code>  | ||
: Убирает некоторые сообщения в консоли, такие как отображение путей поиска  | : Убирает некоторые сообщения в консоли, такие как отображение путей поиска  | ||
Revision as of 16:42, 5 November 2023
- Для руководства по использованию 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