Branan wrote:The worst-case scenario is completely non-contiguous UV maps, meaning each triangle is its own UVW "island". In such a case one unique vertex has to be generated for each corner of each triangle, resulting in a vertex count of 3xtotal_triangles.
Trylon wrote:I just remembered - the original PyPRP exporter had buggy code where every triangle would have its own vertices.
I just made a test.
Added a flat plane, subdivided, and converted Quads to Triangles, and got 16384 Triangles.
On export, the number of vertices was 49152, so exactly 3*16384.
Another plane, with 16383 Quads, got exported to 65532 vertices, which is 4*16383.
A third, mixed plane, with 10240 Tris + 5120 Quads, exported to 51200 vertices (3*10240 + 4*5120).
Okay, seems I was wrong assuming there's some "projection" made. It's just 4 vertices per Quad, and 3 per Triangle. Always, it seems.
But, wait, you want to say that this is sub-optimal? Can graphics cards really "share" vertices? I was under the assumption the hardware always needs faces or vertices separated.