When I record a display list while using a vertex program, what happens ? Does the display list record the result of the vertex program or does it just record the coordinates I sent trough glvertex3f ?
If my vertex program cancel some vertex, what will happen to my display list ? Will it retains only the vertex which have passed the vertex program test ?
From all I know the display list will just record the data you send to the pipeline before it actually enters the pipeline (display list stores OpenGL commands). So if you have a vertex shader enabled or not won’t make any difference. Secondly, you cannot cancel vertices on the vertex program and there is no such thing in OpenGL as “vertex program test”.
Originally posted by Zengar: there is no such thing in OpenGL as “vertex program test”.
I think he means the various clipping and culling operations done to the polygons.
Though this takes place just before the rasterisation stage and can not be recorded even by the geometry buffer.
Thanks; I thought it was possible to discard vertex, my mistake.
I could try a workaround by setting the vertex I want to discard beyond the clipping range, but I’m afraid it will still be costy as I have plenty of theses ( I retain only 1 triangle out of 30, as a ratio), from a processing point of view and from a memory point of view, because even beyond the clipping range theses unrenderable triangles will still be recorded into VBO.