获取默认的 ArnoldRenderOptions 属性

getting defaultArnoldRenderOptions attributes

我正在尝试使用 pymel 为 Maya 编写插件。使用 Arnold 渲染器(输出文件格式)的默认属性存在一些问题。

代码:

import maya.cmds as cmds

cmds.getAttr('defaultRenderGlobals.imageFormat') #return id of used format, for example png - 32
cmds.getAttr('defaultRenderGlobals.imageFormat') #return constant id=51 if Arnold Renderer set as current renderer
cmds.getAttr('defaultArnoldRenderOptions.?????') #how do the same with arnold options?

您上面的代码不是 PyMEL。我会用 PyMEL 回答,因为这是你要求的,it's better 而不是 maya.cmds。

要获取节点上所有可用属性的列表,请使用 listAttrdefaultArnoldRenderOptions 上有许多属性,并且它们未排序返回,因此您可能希望对列表进行排序或过滤以便于查找。

import pymel.core as pm

# all attributes
print pm.listAttr("defaultArnoldRenderOptions")

# print names of attributes sorted, one per line.
print ("\n").join(sorted(pm.listAttr("defaultArnoldRenderOptions")))

#result
...
ignoreSubdivision
ignoreTextures
ignore_list
imageFormat
indirectSampleClamp
indirectSpecularBlur
...

没有输出文件格式,只有图像格式

获取并打印 imageFormat 属性的值

print pm.PyNode("defaultArnoldRenderOptions").attr("imageFormat").get()
#result
None