Search code examples
pythoncolorsmayalayerdisplay

Maya / Python, how to change display layer's colour?


After create a new display layer, how to set colour attribute to that layer?

sel = cmds.ls(selection=True,fl=True)    
coneGroup = cmds.group(empty=True,name="cones_#")
dGroup = cmds.createDisplayLayer(coneGroup, n = "cones_cam")
cmds.color(dGroup, (0,0,0))

Solution

  • Use need to use setAttr:

    sel = cmds.ls(selection=True,fl=True)    
    coneGroup = cmds.group(empty=True,name="cones_#")
    dGroup = cmds.createDisplayLayer(coneGroup, n = "cones_cam")
    
    # Enable the layer's color.
    cmds.setAttr("{}.color".format(dGroup), True)
    
    # Enable the layer's color to use rgb.
    cmds.setAttr("{}.overrideRGBColors".format(dGroup), True)
    
    # Set the layer's color with values between 0-1.
    cmds.setAttr("{}.overrideColorRGB".format(dGroup), 1, 0, 0)