尝试通过节点编辑器删除RenderSetupLayer节点时出现渲染设置错误

时间:2019-01-15 12:09:39

标签: python python-2.7 maya maya-api

我在StackOverflow上的第一篇文章!

我目前正在尝试编写一个简单的“渲染设置”工具,以快速允许删除RenderSetup图层。

但是,我注意到当我按名称选择RenderSetupLayer节点时,它会导致“渲染设置” GUI中的“已删除”渲染层在“活动层”按钮所在的区域中部分变灰。如果再关闭该窗口,则报告该窗口存在C ++错误,并显示以下错误:

“ maya错误510:内部C ++对象(RenderSetupWindow)已被删除。”

然后,我做了一个简单的非基于代码的测试,在该测试中,我简单地打开了“渲染设置”对话框,创建了一个新的渲染层,并通过节点编辑器窗口删除了RenderLayer和RenderSetupLayer节点,结果相同的“错误”。关闭窗口后,我将无法重新打开,暗示Maya的RenderSetup界面中存在一个非常基本的错误。非常令人沮丧!这是Maya的已知问题吗?谁能推荐可行的工作流程来有效地从RenderSetup系统中删除图层?

此外,对于从“渲染设置”系统中选择预先存在的收藏集,是否有人有任何建议?在线上有很多资源,但是我找不到任何详细信息。我想选择集合并分配给变量,但是我只能在创建集合后才能执行此操作。

任何帮助将不胜感激

谢谢

克雷格

1 个答案:

答案 0 :(得分:0)

这是哪个Maya版本?我在Maya 2018中删除渲染层没有任何问题,无论如何与python相比,这可能是您的解决方案:

#modules
import maya.app.renderSetup.model.renderLayer as renderLayer
import maya.app.renderSetup.model.renderSetup as renderSetup
rs = renderSetup.instance()

rs.clearAll() #for deleting all renderlayers

#to delete a specific renderlayer
rl_layer = rs.createRenderLayer("Layer") #create renderlayer
renderLayer.delete(rl_layer) #delete renderlayer