2
我想要创建第二个UV集,然后通过矢量u=0, v=1.0/number of vertices
移动对象中的每个UV顶点。新的UV顶点坐标为4个顶点平面上创建应该是这样的:对于顶点0 (u=0,v=0)
,顶点1 (u=0,v=0.25)
,顶点2 (u=0,v=0.5)
,顶点3 (u=0,v=0.75)
等通过偏移/矢量移动每个UV顶点
我在C#源代码:
Vector2[] UV2 = new Vector2[m.vertexCount];
float HalfTexelSize = (1f/ (float)m.vertexCount)/2f;
for (int i = 0; i < m.vertexCount; i++) {
UV2[i] = new Vector2(0f, (float)i/(float)m.vertexCount) + new Vector2(0f, HalfTexelSize);
}
m.uv2 = UV2;
meshFilter.mesh = m;
据我的研究,在Python中没有矢量,现在我坚持使用解决方案。到目前为止,我想出了这一点:
import maya.cmds as cmds
cmds.polyUVSet(create=True, uvSet='map2')
vertexCount = cmds.polyEvaluate(v=True)
vertexCount_float = float(vertexCount)
HalfTextureSize = (1.0/vertexCount/2.0)
x = 1.0/vertexCount
sel = cmds.ls(sl=1, fl=1)
for i in sel:
i=0, i<sel
cmds.polyEditUV(uValue=0.0, vValue=x)
但输出我得到的是第二UV在(0,0)的UV坐标每个顶点设置。谁能帮我?任何MEL/Python解决方案,将不胜感激。