Экспортер игры написан на MEL, поэтому вы можете взаимодействовать с ним из Python, используя модуль maya.mel
.Откроется диалоговое окно, например:
import maya.mel as mel
mel.eval("gameFbxExporter();")
К сожалению, быстрый взгляд на скрипты экспортера игры (которые находятся в вашем каталоге установки maya в каталоге scripts/others
- все они начинаются с префикса«gameFBX») чтобы выглядело так, будто пользовательский интерфейс безнадежно запутан в фактическом экспорте;кажется, что он не предоставляет ничего, что на самом деле просто экспортирует текущий файл в пакетном режиме.
Оперативная процедура называется gameExp_FBXExport
, определенная в "gameFbxExporter.mel."Похоже, что фактический бизнес экспорта фактически делегирован обычному плагину FBX - все остальное в экспортере игр - это просто управление пресетами fbx, выбор частей сцены для экспорта (если сцены установлены таким образом) изатем вызывая плагин fbx.Таким образом, вы можете быть в состоянии пакетировать процесс, используя Python, перебирая файлы и вызывая FBXExport()
из Python.Это позволит экспортировать файл в FBX:
import maya.cmds as cmds
cmds.FBXExport('-file', 'path/to/file.fbx')
Он будет использовать только те настройки FBX, которые активны в данный момент, поэтому вам нужно быть уверенным, что файлы настроены правильно.Вы будете испытывать желание написать это как cmds.FBXExport(f='path/to/file')
, но не будет работать - команды плагинов FBX не используют обычный синтаксис python.
Если ваши текущие настройки основаны на выбранных функциях экспорта, вам необходимо выяснить, как кэшировать правильные выборки - если вы используете функцию «набор выборок экспорта», у вас должна быть возможностьваш экспортер находит набор по имени и выбирает его перед экспортом.
cmds.select("name_of_selection_set")
cmds.FBXExport('-file', 'path/to/file.fbx')
Вы можете использовать другие команды плагина FBX - задокументировано здесь для проверки и манипулирования настройками в ваших файлахкак вы идете вместе.
Большинство профессиональных пользователей не используют конвейер GameExport именно потому, что он очень непрозрачен и не поддерживает партию.В долгосрочной перспективе вы, вероятно, захотите написать простую систему, которая предоставляет стандартные настройки для файлов различных типов и экспортирует FBX-файлы напрямую без GameExporter - хотя это не простой проект, его будет проще поддерживать и расширять, чем взламывать вашпо краям версии Autodesk, которая, честно говоря, довольно хромая.
Если вы еще не знакомы с ней http://tech -artists.org / - отличное место для поискадля помощи и совета трубопровода.