Vertex arrays or display list?


I have a rendering performance question concerning vertex arrays and display lists:
I have to render a face which consists of about 100000 triangles. I can turn the head araund (i’ve implamented a trackball) and now, I’d like to implement a routine
which will allow me to paint on the head(->I’ll need a picker which will give me the actually picked triangle). Until now, I’ve implemented the display function with vertex
arrays (for vertex, texture coords and normals). Now, my question is: Would it be faster to implement the whole rendering using a display list? What is exactly the
difference (I don’t change the geometry, so the use of display-lists is possible)? Or should I implement the picking with a diplay list, because during picking only the
triangles have to be painted, not the texture and the normals,. and the normal display method using vertex arrays?
Thanks a lot for every hint

Philipp Staempfli, student of Computer science. ETH Zuerich

You’re right, display lists are good for static data. But static data implies no changes at all. You can perform operations on the whole display list but not parts. So I don’t see how you could paint individual triangles of the mesh if they’re in a display list. I’d stick with vertex arrays, which are also a great way to render your data performance wise. Someone else may know of a way to get around your problem but I don’t.

Well, I actually don’t have to change my triangles, the only thing I change during painting is the texture (glTexSubImage)… So my geometry-datas are static…