Как создать цветовой атрибут для этого слоя после создания нового слоя отображения?

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))
0
user8972552 24 Фев 2018 в 20:22

3 ответа

Лучший ответ

Используйте необходимость использовать 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
Green Cell 26 Фев 2018 в 04:29

Выдержка из кода:

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.

0
Dominique 24 Сен 2018 в 14:26

#код

Для shadingEngine в 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)

Вышеупомянутый код работает для затенения цвета через поверхностный узел, на который вы можете сослаться, и подразумевает это.

0
Balan Rokz 24 Сен 2018 в 13:17