ProBuilderMesh 代码自定义顶点属性:2020 版本指南
ProBuilderMesh 代码自定义顶点属性:2020 版本指南
ProBuilder 4.2 版本之后,您可以使用以下代码来自定义顶点属性:
// 创建一个新的 Mesh 对象
Mesh mesh = new Mesh();
// 设置顶点坐标
Vector3[] vertices = new Vector3[4] {
    new Vector3(0f, 0f, 0f),
    new Vector3(1f, 0f, 0f),
    new Vector3(0f, 1f, 0f),
    new Vector3(1f, 1f, 0f)
};
mesh.vertices = vertices;
// 设置顶点颜色
Color[] colors = new Color[4] {
    Color.red,
    Color.green,
    Color.blue,
    Color.white
};
mesh.colors = colors;
// 设置三角形索引
int[] triangles = new int[6] {
    0, 1, 2,
    2, 1, 3
};
mesh.triangles = triangles;
// 设置UV坐标
Vector2[] uv = new Vector2[4] {
    new Vector2(0f, 0f),
    new Vector2(1f, 0f),
    new Vector2(0f, 1f),
    new Vector2(1f, 1f)
};
mesh.uv = uv;
// 创建ProBuilderMesh对象
ProBuilderMesh pbMesh = ProBuilderMesh.Create(mesh);
// 更新顶点属性
pbMesh.SetColors(colors);
pbMesh.SetUV2(uv);
在上述代码中,我们创建了一个新的 Mesh 对象,并自定义了顶点坐标、颜色、三角形索引和 UV 坐标。然后,我们使用 ProBuilderMesh.Create() 函数创建了一个新的 ProBuilderMesh 对象,并将自定义的 Mesh 传递给它。最后,我们使用 pbMesh.SetColors() 和 pbMesh.SetUV2() 函数更新了 ProBuilderMesh 对象的顶点颜色和 UV 坐标属性。
需要注意的是,如果要自定义顶点属性,需要在创建 ProBuilderMesh 对象之前创建一个新的 Mesh 对象,并将自定义的顶点属性设置给它。然后,再将该 Mesh 对象传递给 ProBuilderMesh.Create() 函数创建 ProBuilderMesh 对象。最后,通过 pbMesh.SetXXX() 函数来更新 ProBuilderMesh 对象的顶点属性。
通过代码自定义顶点属性,您可以实现更加灵活和定制化的模型创建,例如为每个顶点赋予不同的材质或贴图坐标。
 
原文地址: https://www.cveoy.top/t/topic/mXmD 著作权归作者所有。请勿转载和采集!