UE4やUnityではFBXを使ってモデルデータを読み込みますよね?
ただ、FBXの出力そのものが結構面倒くさくないですか?
Mayaの場合、基本的に出力する内容って毎回一緒なのにいちいちダイアログが出て面倒くさい…。
Pythonであればダイアログも出さずにサクッと出力することができます。
今回はMayaからFBXをPythonで、お好みのFBX設定にして出力する方法を紹介しました。
管理人がYouTubeで解説!
知りたいコマンドがあればFBX Plug-inガイドを参考に!
Autodesk Maya FBX Plug-in ガイド
こちらFBX2012のものですね。
といってもこれしかありませんし、これが一番参考になります。
YouTubeで使ったコマンド
UE4向けにノード名をリネームする
from maya import cmds
nodes = cmds.ls(sl=True)
for node in nodes:
ue4_name = "SM_" + node[0].upper() + node[1:]
cmds.rename(node, ue4_name)
選択したノードを個別にFBXで出力する
import os
from maya import cmds
from maya import OpenMaya as om
nodes = cmds.ls(sl=True)
for node in nodes:
cmds.select(node)
new_path = os.path.join(current_dir, "{}.fbx".format(node))
new_path = new_path.replace("\\", "/")
cmds.FBXPushSettings()
try:
cmds.FBXResetExport()
cmds.FBXProperty("Export|IncludeGrp|Geometry|Triangulate", "-v", 1)
cmds.FBXProperty("Export|IncludeGrp|Animation", "-v", 0)
cmds.FBXExportInputConnections("-v", 0)
cmds.FBXExportCameras("-v", 0)
cmds.FBXExportConstraints("-v", 0)
cmds.FBXExportLights("-v", 0)
om.MGlobal.executeCommand('FBXExport("-f", "{}", "-s")'.format(new_path))
finally:
cmds.FBXPopSettings()
コメント