gpt4 book ai didi

python - 获取着色器分配给的网格的名称

转载 作者:行者123 更新时间:2023-11-28 22:49:07 25 4
gpt4 key购买 nike

如何使用 python 获取分配给着色器的网格的名称?

例如,lambert02 --> AreaA_01_geo, lambert03 --> AreaA_03_geo, lambert04 --> AreaA_04_geo

我试过用

Shader = cmds.ls(type = 'surfaceShader')
for i in Shader:
con = mc.listConnections('%s.outColor' % i)
name = cmds.listConnections(Shader, type="mesh")

但是我无法从 name 变量中得到任何东西

最佳答案

着色器连接到一个或多个包含分配的着色集。所以这不是 1:1 的分配,而是一对多,然后又是一对多(当然你不会经常看到它)。请注意,当您只需要一个 namespace 时,您使用了 2 个 namespace 。

import maya.cmds as mc

Shader = mc.ls(type = 'surfaceShader')
for i in Shader:
con = mc.listConnections('%s.outColor' % i)
names = mc.listConnections(con, type="mesh")
print i, "->", ", ".join(names)

关于python - 获取着色器分配给的网格的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24301989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com