I got code working which uses a VBO and an IBO: as I parse my geometry I build vertex and index arrays for triangles and then call glDrawElements with GL_TRIANGLES.
I read about being able to signal primitive restart in the index buffer, here, about halfway down the page. This is good, but I’m wondering if it’s possible to forego the index buffer entirely, and just signal a primitive restart by sending in a specific vertex value (like have the first attribute zero value be infinity)?
Then I’d only need to send one buffer to the GPU before I draw with GL_TRIANGLE_FAN for instance to draw a set of convex polygons.
As clearly stated on that page:
Primitive restart is for indexed rendering. There is no way to restart a primitive based on the value of a vertex attribute.