问题提出:
在检查渲染参数的时候,经常涉及到mentalray渲染器。但是maya的设置很奇怪,对于空白文件,或者从来没有保存过相关设置的场景文件,mentalray渲染器不会被激活,那么和mentalray有关的属性就无法查询到,每次运行到此,都会抛出一个难看的bug。这里介绍的两条命令,即可通过mel命令打开mentalray, 并创建默认节点。有了这两步,就可以通过命令进行需要的操作了
先贴上命令:
setCurrentRenderer mentalRay;
miCreateDefaultNodes;
第一句的执行效果,是在"Render Settings"界面里,把渲染器切换到mentalray。但这个时候,在outliner里还是无法看到miDefaultFramebuffer,mentalrayGlobals,mentalrayItemsList,miDefaultOptions这几个节点。明显的,mentalray的相关属性应该就保存在这几个节点中。
第二条命令就创建了这些节点
第一句命令有一个等效的方法 setAttr "defaultRenderGlobals.currentRenderer" -type "string" "mentalRay";
在另外两种情况下,也会创建mentalray节点,一种是,当我们在“Render Settings”界面中点击一个属于mentalray的Tab, 比如Indirect Lighting 选项卡;另一种是,用mentalray 方法进行一次渲染。但这两种情况都不适合于程序实现。