According to the docs and error messages I’ve seen, Unity’s Mesh.uv
should be the same length as Mesh.vertices
. This seems wrong to me. UV maps usually have more vertices than the actual mesh due to duplication of vertices at seams.
Going through a collada file for example, there’s a UV co-ordinate (Vector2) for each vertex in each triangle. That gives a total of 3 times the number of mesh triangles. This makes more sense to me.
So, how exactly should one go about assigning UVs to a mesh in unity? All the examples I’ve been able to find on google are of simple planes with no seams, hence no vertex duplication. Could someone please provide an example with a more complex mesh? A cube perhaps.
Oh another source of confusion for me is the fact that unity’s normals are assigned per-vertex not per-face. Is there a way to convert from per-face to per-vertex?