我正在尝试使用pymel为Maya编写插件。使用Arnold渲染器的默认属性(outputfile格式(有一个小问题。
代码:
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回答,因为这是你想要的,而且它比maya.cmds.更好
要获取节点上所有可用属性的列表,请使用listAttr
。defaultArnoldRenderOptions上有许多属性,它们都是未排序返回的,因此您可能需要对列表进行排序或筛选,以便于查找。
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