【Maya】ファイルタイプからFBX Exportが消えて困った話

FBXの書き出しを以下のような感じでmaya.cmdsのfile関数を使って行っているコードがありまして。

cmds.file(path, pr=True, es=True, f=True, type="FBX export")

prフラグってFBXエクスポートのとき意味あるんだろうかみたいな疑問はありつつもそれはおいておいて、一部の環境で「FBX exportなんてファイルタイプないよ」とエラーが出てました。

プラグインマネージャを見てみるとちゃんとfbxmayaは読み込まれている。
が、fbxmayaのプラグイン情報を見ると「ファイル トランスレータ機能」の項目にたしかにFBX exportがない。
しかも再現している環境としていない環境でMayaのバージョンに違いはない。

色々調べた結果、ダイアログスタイルの設定に依存していることが分かりました。
f:id:tm8r:20170106100256p:plain
ウィンドウ>設定/プリファレンス>プリファレンス>設定>ファイル/プロジェクトの下部にあるダイアログスタイルが「Maya規定」ではなく「OSネイティブ」になっているとファイルタイプからFBX Exportが消えてしまうようです。

というわけでFBX exportをどうしても使いたい状況でそんなファイルタイプないよーと言われたらダイアログスタイルが「OSネイティブ」になっていないか確認、なっていたら「Maya規定」に戻してMayaを再起動してやれば利用できるようになります。
罠。

2019.03.07追記
上記のcmds.fileを利用する形だとMayaの設定状況に依存してしまいますが、この問題は以下のコマンドを用いることで解消します。

file_path = "保存したいパス"

# mel版
mel.eval('FBXExport -f "' + file_path+ '" -s')

# cmds版
cmds.FBXExport('-f', file_path, '-s', True)

cmds版と書いてますが結局はmelが透過的に呼び出されているだけなので、通常のcmdsコマンドとか若干お作法が異なります。

書き出しの際のオプションに関しては以下をご参照ください。
knowledge.autodesk.com

スポンサーリンク