所以我有这个非常简单的代码,它应该加载一个场景。它必须是其他东西的一部分,但目前它的工作是错误的。我通过大量更改的设置保存了场景。当我从UI加载它时,一切都在那里。但是当我加载此代码或源脚本.py时,设置不一样。就像它们被重置为默认值或未加载一样。
我已经阅读了有关文件的文档,并尝试了其他一些东西,但没有任何作用。 Maya是2016年分机1 sp5。我尝试使用maya 2017并且没有这样的问题,但是与动画有关的其他错误阻止我使用2017。
是否有某种额外的参数来读取设置或我缺少的其他东西?
import maya.cmds as cmds
file_path = somefile.ma'
cmds.file( new = True, force = True )
cmds.file(file_path, o=True,type='mayaAscii', options='v=0;p=17;f=0', ignoreVersion=True)
答案 0 :(得分:0)
这里有关于文件命令的一些文档...它适用于maya 2015,但2016年不应该有太大差异
https://help.autodesk.com/cloudhelp/2015/ENU/Maya-Tech-Docs/Commands/file.html
看起来你可能需要组合buildLoadSettings (bls)
标志和loadSettings (ls)
标志
我自己没有尝试过,但是如果我正确地阅读它,看起来你可以使用带有buildLoadSettings标志的file命令从中生成'implicitLoadSettings',然后运行带有loadSettings标志的file命令'implicitLoadSettings'所以它看起来像这样:
cmds.file(new=True, force=True)
cmds.file(file_path, open=True, buildLoadSettings=True)
cmds.file(file_path, open=True, loadSettings='implicitLoadSettings')
我遗漏了很多其他的旗帜 - 只是说明了这个例子的重要标志......
答案 1 :(得分:0)
加载脚本时,哪些设置不完全相同?
我正在运行Maya 2016 Extension2 SP1。这是Mac版本:
import maya.cmds as mc
file_path = '/Users/swift/Desktop/somefile.ma'
mc.file(new=True, force=True, bls=True)
mc.file(file_path,
o = True,
type = 'mayaAscii',
op = 'v = 0; precision = 20; f = 0',
ignoreVersion = True)
此代码工作正常。我检查了一下。我的设置是相同的(使用UI或使用此代码)。
您的代码中也存在错误。您在'
行中错过file_path
个引号。
答案 2 :(得分:0)
通过安装SP6
解决了问题