2018年5月26日土曜日

namespaceを指定してFBXインポート

手動で行う分には問題なく行える操作ですが、スクリプトで実行しようとしたとき、若干はまりポイントだと思うので、メモを。
以下ソース
# -*- coding: utf-8 -*-
import maya.cmds as mc
import maya.mel as mel
def FBXImportToTargetNamespace(ns='targetNamespace'):
#set namespace
currentNs = mc.namespaceInfo(cur=True)
if not mc.namespace(ex=':%s'%ns):
mc.namespace(add=':%s'%ns)
mc.namespace(set=':%s'%ns)
#import FBX
pathList = mc.fileDialog2(fm=1,ds=2,ff=('FBX(*.fbx)'))
if not pathList:
return
mel.eval('FBXImport -f "%s"'%pathList[0])
#return current ns
mc.namespace(set=currentNs)
FBXImportToTargetNamespace(ns='testNs')

fileコマンドからインポートした時、namespaceを指定しても無反応。
カレントネームスペースを設定したうえでインポートするところがポイント。

0 件のコメント:

コメントを投稿