tristrips

The only reason that tristrips were elevated to “primitive” status is because the hardware of the early 90s had a post-transform cache size of 2 and they didn’t support indexing.

Is this still relevant today?

Optimization for the post-transform cache can be done by simply sorting the index triples within a trilist. Do we need another unnecessary primitive?

<very_minor_concern>
Tri strip representations can actually be harmful. Sometimes people put degenerate triangles in a strip to make arbitrary long strips. This is bad for some geometric and mesh algorithms since it messes up the topology of the mesh.

Please note that not all “degenerate triangles” are bad. People often add such zero-area triangles to allow for subdivision surfaces on meshes with creases, or for volume extrusion for stencil buffer shadow algorighms. However, these triangles preserve the topology and are only degenerate from a position space (R3) perspective.
</very_minor_concern>

All the game developers we questioned earlier in the year indicated that their engines still process triangles (strips and fans) predominately. That is why those primitives are in COLLADA to represent (at least somewhat) baked geometries near the front of the art pipeline.