Created attachment 124384 [details] gl_VertexID sequence is not correct in non-index drawing OpenGL ES 3.0 Mesa 11.2.0 in HSW generates incorrect gl_VertexID sequence. e.g. when I draw as follows glDrawArrays(GL_POINTS, 0, 1000); max gl_VertexID is not 999, but about 1200, while total vertext number is 1000. It means gl_VertexID skips some number. In the attachment, red points are inside max gl_VertexID, while green points are outside max gl_VertexID. You can see lots of skipped gl_VertexID also.
Created attachment 124385 [details] gl_vertexID pic
https://bugs.freedesktop.org/attachment.cgi?id=124401 patch is needed to create real GLES3 context, according to https://bugs.freedesktop.org/show_bug.cgi?id=96420 you can compile by $ g++ -lGLESv2 -lglfw -Wall -g cpp-tutorial-4-gles3-pointcloud.cpp By the way, this gl_VertexID issue still exists in GLES3 context.
Mesa 12.0 passes dEQP for GLES3.0. For that reason, it seems likely that the sample program is incorrect, not the driver. Before driver developers spend time debugging this program, I think it is sensible to ask the following questions: 1) is this a regression? 2) do GLES3.0 drivers for other hardware render the program differently?
Let me answer 1) I don't know. Probably nobody never raise this issue. 2) Unfortunately, I have only Intel GPU. I can say it's bug as far as I understand gl_VertexID
Dear Reporter, This Mesa bug has been in the "NEEDINFO" status for over 60 days. I am closing this bug based on lack of response but feel free to reopen if resolution is still needed. Please ensure you're supplying the correct information as requested. Thank you.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.