我有一个Maya场景,里面有动画角色。我正在尝试将此动画导出到alembic文件,而无需打开Maya。为此,我选择使用Maya Standalone。
我用来导出的命令行是这样的:
import maya.standalone
maya.standalone.initialize()
cmds.file('C:\tmp\fred_scene.ma', open=True, force=True)
cmds.AbcExport(jobArg=r'-frameRange 0 30 -stripNamespaces -uvWrite -worldSpace -writeVisibility -wholeFrameGeo -worldSpace -dataFormat ogawa -root fred:geo_fred -file C:\tmp\animated_fred.abc')
如果我使用mayapy.exe解释器进入交互式会话,则效果很好。
但是我正在尝试从另一个python解释器使用Maya Standalone,但这种方法不起作用。在此python解释器中,我正在执行之前的代码之前的以下操作,以正确初始化解释器:
maya_location = os.path.normpath('C:/Program Files/Autodesk/Maya2018')
python_maya_location = os.path.normpath("C:/Program Files/Autodesk/Maya2018/Python")
maya_bin_location = os.path.normpath('C:/Program Files/Autodesk/Maya2018/bin')
os.environ['MAYA_LOCATION'] = maya_location # add maya location as a environment variable
os.environ["PYTHONHOME"] = python_maya_location
os.environ["PATH"] = maya_bin_location + ';' + os.environ["PATH"]
# Others
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\site-packages\setuptools-0.6c9-py2.6.egg")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\site-packages\pymel-1.0.0-py2.6.egg")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\site-packages\ipython-0.10.1-py2.6.egg")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\site-packages\ply-3.3-py2.6.egg")
sys.path.append("C:\Program Files\Autodesk\Maya2018\\bin\python26.zip")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\DLLs")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\plat-win")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\lib-tk")
sys.path.append("C:\Program Files\Autodesk\Maya2018\\bin")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python")
sys.path.append("C:\Program Files\Autodesk\Maya2018\Python\lib\site-packages")
mayapy.exe中的结果是:Correct Result
另一个python解释器中的结果是:Incorrect Result
在两个alembic文件中,动画看起来正确,但几何图形已损坏。 有人可以帮助我解决这个问题吗?