我正试图从玛雅的脚本编辑器中导入pymel,因为今天早上它不起作用。我尝试对所有Autodesk产品进行干净卸载,然后重新安装Maya,但没有解决问题。当我试图导入pymel时,我得到的是:
import pymel.core as pm
# pymel.core : Updating pymel with pre-loaded plugins: svgFileTranslator, invertShape, mayaHIK, GamePipeline, curveWarp, tiffFloatReader, MASH, poseInterpolator, bifrostvisplugin, ATFPlugin, hairPhysicalShader, cacheEvaluator, ikSpringSolver, ik2Bsolver, xgenToolkit, AbcExport, retargeterNodes, gameFbxExporter, VectorRender, OpenEXRLoader, lookdevKit, Unfold3D, Type, mayaCharacterization, Boss, mtoa, bifrostGraph, meshReorder, modelingToolkit, MayaMuscle, rotateHelper, matrixNodes, bifmeshio, AbcImport, autoLoader, deformerEvaluator, sceneAssembly, gpuCache, OneClick, shaderFXPlugin, objExport, bifrostshellnode, renderSetup, GPUBuiltInDeformer, ArubaTessellator, mayaVnnPlugin, quatNodes, fbxmaya #
# Error: AssertionError: file C:Program FilesAutodeskMaya2020Pythonlibsite-packagespymelinternalfactories.py line 3099: ('AiSky', <class 'maya.OpenMaya.MFnDagNode'>, <class 'maya.OpenMaya.MFnDependencyNode'>) #
当我尝试再次导入它时,我得到了这个:
import pymel.core as pm
# Error: NameError: file C:Program FilesAutodeskMaya2020Pythonlibsite-packagespymelcore__init__.py line 77: name 'windows' is not defined #
我和Maya一起工作多年了,这是我第一次遇到这个问题。我试了所有我能想到的方法。重新安装Maya,重新启动Maya并重新启动计算机。
我在Windows 10上使用Maya 2020.4。
你知道是什么原因导致的吗?任何帮助将不胜感激!
谢谢!:)
恐怕这与较新版本的MtoA(5.1.3)有关。这与pymel不起作用,因为它试图从arnold包装所有节点,并且在aiSky
上失败。如果我正确阅读代码,那是因为aiSky
定义了不同的类作为它的父类- PyMel代码检查中有断言。由于这个断言是在PyMel初始化期间触发的,因此它将有效地中断它。MtoA版本应该可以在较新版本的Maya中正常工作。
通过将这行添加到您的'userSetup。Mel的文件应该在Maya 2020中工作:
python("import pymel.core as pm");
看起来在最新的MtoA(5.1.+)中有一些问题。通过在Arnold之前加载pymel,使用pymel的自定义脚本应该可以再次工作。