如何在override.AbsOverride maya 2018或2019中设置set属性('primaryVisibility')
import maya.app.renderSetup.model.override as override
import maya.app.renderSetup.model.selector as selector
import maya.app.renderSetup.model.collection as collection
import maya.app.renderSetup.model.renderLayer as renderLayer
import maya.app.renderSetup.model.renderSetup as renderSetup
import maya.cmds as cmds
rs = renderSetup.instance()
# Create render layer
r1 = rs.createRenderLayer("char_beauty")
# Create collections
c1 = r1.createCollection("char")
c2 = r1.createCollection("trk_geo")
c2pv=c2.createCollection("PV")
c2pv.getSelector().setFilterType(2)
so=c2.createOverride('PV', override.AbsOverride.kTypeId)so.setattribute('primaryVisibility')
尝试创建primaryVisibility属性。对于trk_geo集合.不知道在AbsOverride中设置primaryVisibility属性。
发布于 2019-11-01 11:29:18
看起来,您的代码缺少覆盖上的finalize方法调用:
import maya.app.renderSetup.model.override as override
import maya.app.renderSetup.model.selector as selector
import maya.app.renderSetup.model.collection as collection
import maya.app.renderSetup.model.renderLayer as renderLayer
import maya.app.renderSetup.model.renderSetup as renderSetup
import maya.cmds as cmds
rs = renderSetup.instance()
# Create render layer
r1 = rs.createRenderLayer("char_beauty")
# Create collections
c1 = r1.createCollection("char")
c2 = r1.createCollection("trk_geo")
c2pv=c2.createCollection("PV")
c2pv.getSelector().setFilterType(2)
# Create override
so = c2.createOverride('PV', override.AbsOverride.kTypeId)
so.finalize('visibility')如果您不知道属性的名称,您可以跳过最后一个finalize调用,然后通过拖放属性编辑器中的属性来手动分配覆盖,然后调用print so.attributeName()来查看实际名称。
https://stackoverflow.com/questions/58638851
复制相似问题