在 Maya 中使用 Python 在列表命名对流中附加 aiArealights



所以我有一个功能,当我点击一个按钮时,我的列表中有一个 aiAreaLight apping。 我将灯重命名为"PainterLight_aiArealight"+"1",所以每次制作灯时,我都有这个名字 1,2,3 等...

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

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

看截图

我的代码 :

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)

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)

最新更新