Очистка сцены перед экспортом - PullRequest
0 голосов
/ 15 октября 2018

Я пытаюсь создать сценарий для выполнения ряда операций очистки на сцене перед экспортом в fbx.

Как выбрать все модели Mesh / Poly в сцене, чтобы удалить их?Я попытался использовать isKindOf GeometryClass, но кости также выделены ...

Я также пытаюсь изменить все свойства отображения объекта на "По слою", но не могу отобразить их вПрослушиватель Maxscript.

Вот что мне нужно сделать:

  1. Скрыть по категории> нет
  2. Показать все
  3. Разморозить все
  4. Установить для свойства отображения значение «По слою»
  5. Удалить все объекты 3d Mesh / Poly со сцены
  6. Экспорт в fbx

Наконец, есть лиспособ запустить этот сценарий для нескольких файлов Max через командную строку?

Спасибо


Это то, что я в конечном итоге использовал (ExportAnimationFbx.ms):

filename=maxops.mxsCmdLineArgs[#filename]
loadmaxfile filename

hideByCategory.none()
unhide objects
unfreeze objects
objects.displayByLayer = on
delete (for obj in objects where isKindOf obj.baseObject Editable_Mesh or isKindOf obj.baseObject Editable_Poly or isKindOf obj Plane collect obj)

exportFileName = maxops.mxsCmdLineArgs[#exportfilename]

--Geometry------------------------------------------------------------------------
FBXExporterSetParam "SmoothingGroups" false
FBXExporterSetParam "NormalsPerPoly" false
FBXExporterSetParam "TangentSpaceExport" false
FBXExporterSetParam "SmoothMeshExport" false
FBXExporterSetParam "Preserveinstances" false
FBXExporterSetParam "SelectionSetExport" false
FBXExporterSetParam "GeomAsBone" true
FBXExporterSetParam "ColladaTriangulate" false
FBXExporterSetParam "PreserveEdgeOrientation" false
--Animation------------------------------------------------------------------------
FBXExporterSetParam "Animation" true
FBXExporterSetParam "ExportAnimationOnly" false
FBXExporterSetParam "BakeAnimation" true
FBXExporterSetParam "Skin" true
--Cameras------------------------------------------------------------------------
FBXExporterSetParam "Cameras" false
--Lights------------------------------------------------------------------------
FBXExporterSetParam "Lights" false
--Embed Media--------------------------------------------------------------------
FBXExporterSetParam "EmbedTextures" false
--Units----------------------------------------------------------------------------
--Axis Conversion-----------------------------------------------------------------
FBXExporterSetParam "AxisConversionMethod" "Fbx_Root" --"None", "Animation", or "Fbx_Root".
FBXExporterSetParam "UpAxis" "Z" 
--UI----------------------------------------------------------------
FBXExporterSetParam "ShowWarnings" true
FBXExporterSetParam "GenerateLog" false
--FBX File Format----------------------------------------------------------------
FBXExporterSetParam "ASCII" false
FBXExporterSetParam "FileVersion" "FBX201400"

exportFile (exportFileName) #noprompt selectedOnly:false using:FBXEXP

И это команда, которую я повторяю в моем командном файле:

"C:\Program Files\Autodesk\3ds Max 2019\3dsmaxbatch.exe" ExportAnimationFbx.ms -mxsString filename:"myfoldername\maxfilename.max" -mxsString exportfilename:"assetname.fbx"

1 Ответ

0 голосов
/ 15 октября 2018

Для начальной настройки сцены:

hideByCategory.none()
unhide objects
unfreeze objects
objects.displayByLayer = on
delete (for obj in objects where isKindOf obj Editable_Mesh or isKindOf obj Editable_Poly collect obj)

Что касается экспорта в FBX, см. это Как управлять постом Макса для экспортера FBX .Если вы используете макс 2018,4 или новее, эта серия постов в блоге поможет вам получить доступ к командной строке 3ds max.

...