Is there a known bug in the automatic attrib index assignment for (certain) ATI drivers?
If I compile and link this two simple vertex and fragment shaders:
Code :// vertex shader: attribute vec4 position; attribute vec4 color; varying vec4 myColor; void main() { gl_Position = position; myColor = color; }and query the active attribs after (succesfull) linkage, I get the following assignments: "position -> 1" and "color -> 2". Using these attrib slots (glVertexAttribPointer() and glEnableVertexAttribArray()) nothing is rendered.Code :// fragment shader: varying vec4 myColor; void main() { gl_FragColor = vec4(1.0) - myColor; }
If I do an explicit assignment of "position -> 0" and "color -> 1" with glBindAttribLocation() prior to the program linkage call, the expected result is rendered.
Note: without the explicit assignment everything is working correctly on NVidia hardware/drivers...



