在 maya 2022 中使用 Python 将当前渲染引擎更改为 V-Ray

Change Current Render Engine to V-Ray using Python in maya 2022

我只是想将渲染设置中的当前渲染器更改为 Maya 中的 V-Ray。

我关注了这个: 但它不适用于 V-Ray 选项

我也试过这个:

import maya.cmds as cmds

# ensure plugins are loaded
cmds.loadPlugin("vrayformaya", quiet=True)
cmds.loadPlugin("vrayvolumegrid", quiet=True)

# auto load
cmds.pluginInfo("vrayformaya", edit=True, autoload=True)
cmds.pluginInfo("vrayvolumegrid", edit=True, autoload=True)

# edit attribs
cmds.setAttr("defaultRenderGlobals.currentRenderer", l=False)  
cmds.setAttr("defaultRenderGlobals.currentRenderer", "V-Ray", type="string")

# Recreate the render window to refresh them
if cmds.window("unifiedRenderGlobalsWindow", exists=True):
    cmds.deleteUI("unifiedRenderGlobalsWindow")
mel.eval("unifiedRenderGlobalsWindow")

而且我不知道为什么,但是此代码适用于 'arnold' 但不适用于 'V-Ray',在这一行

cmds.setAttr("defaultRenderGlobals.currentRenderer", "V-Ray", type="string") 

谢谢

尝试在手动切换到 VRay 时读取正确的值:

print(cmds.getAttr("defaultRenderGlobals.currentRenderer"))

然后当你知道正确的名字时,你就可以在你的代码中使用它了:

cmds.setAttr("defaultRenderGlobals.currentRenderer", "vray", type="string")