代码之家  ›  专栏  ›  技术社区  ›  user8972552

Maya/Python,如何更改显示层的颜色?

  •  0
  • user8972552  · 技术社区  · 6 年前

    创建新的显示层后,如何为该层设置颜色属性?

    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))
    
    3 回复  |  直到 6 年前
        1
  •  2
  •   Green Cell    6 年前

    使用需要使用 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)
    
        2
  •  0
  •   Jeyabalan Ganesh Nadar    6 年前

    #代码

    用于cmds中的shadingEngine。ls(类型=“shadingEngine”):

        new_shader = cmds.listConnections(shadingEngine, type = 'lambert')[0]
        print new_shader
        new_sg = mC.sets(renderable=True, noSurfaceShader=True, empty=True)
        print new_sg
        f=mC.setAttr (new_shader+'.color',values[0],values[1],values[2])
        mC.hyperShade(assign=new_shader)
    

    以上代码用于通过曲面节点进行着色,您可以引用并暗示它,很高兴搜索到您的搜索

        3
  •  0
  •   Dominique    6 年前

    代码摘录:

    for shadingEngine in cmds.ls(type="shadingEngine"):
        new_shader = cmds.listConnections(shadingEngine, type = 'lambert')[0]
        print new_shader
        new_sg = mC.sets(renderable=True, noSurfaceShader=True, empty=True)
        print new_sg
        f=mC.setAttr (new_shader+'.color',values[0],values[1],values[2])
    
        mC.hyperShade(assign=new_shader)
    

    以上代码用于通过曲面节点进行着色,您可以引用并暗示它,H。