使用Python在maya中将aiArealights附加到列表命名对流中

时间:2018-05-15 13:26:41

标签: maya

所以我有一个功能,当我点击一个按钮时,我的列表中有一个aiAreaLight。  我将灯光重命名为“PainterLight_aiArealight' +' 1'”,所以每当我点亮时,我都会将这个名字用1,2,3等...

在我的大纲中我有正确的名字,但是当我打印我的列表时,它保留名称' transform1。

有人可以解释一下我做错了什么吗?

See screenshot

我的代码:

import maya.cmds as cmds
lights=[]
def Button_pressed ():
    lights.append(cmds.shadingNode('aiAreaLight', asLight=True))
    cmds.rename(lights[len(lights)-1],'PainterLight_aiArealight'+'1')
    print(lights)

1 个答案:

答案 0 :(得分:0)

maya.cmds通常使用字符串。所以你的灯光列表确实是一个字符串列表,并且与maya中的任何真实对象都没有关联。在这种情况下,您可以先简单地重命名灯光然后将其附加到列表中,也可以使用pymel使用对象并使用重命名。

import pymel.core as pm
lights=[]
def Button_pressed ():
    lights.append(pm.shadingNode('aiAreaLight', asLight=True))
    lights[-1].rename('PainterLight_aiArealight'+'1')
    print(lights)