はじめに
Mayaをスタンドアローン起動する時よく忘れがちなので、メモ
mayaをバックグラウンド起動する場合、
下記の2種類の方法がありますが、
今回は実質インタープリターで動作しやすいmayapyの方。
- mayapy
- mayabatch.exe
環境
Maya2019
interpreter:mayapy.exe
↑特にインタープリターをmayapyに指定しないと
cmdsやpymelはimporterrorになって動かないので注意。
内容
setup.py
import maya.standalone
maya.standalone.initialize("ptyhon")
#ここに実行したい内容を書く
maya.standalone.uninitialize()
実践
import maya.standalone
import maya.cmds as cmds
maya.standalone.initialize("ptyhon")
cmds.polyCube(name="test_cube_001")
mesh_list = cmds.ls(type="transform")
print(mesh_list)
maya.standalone.uninitialize()
#result::[u'front', u'persp', u'side', u'test_cube_001', u'top']
起動に少し時間がかかりますが、
バックグラウンドで起動するので、
シーンの一括処理やシーン内の情報をjson等に書き出すバッチ処理的に使えますね。