glGetError returns GL_INVALID_OPERATION after the following sequence:
glBindVertexArray(1); glDisableVertexAttribArray(1); glBindBuffer(GL_ARRAY_BUFFER,0); glVertexAttribPointer(1,0,GL_FLOAT,false,0,0x0000);
I am not sure why it is happening considering the SDK for glVertexAttribPointer says:
GL_INVALID_OPERATION is generated if zero is bound to the GL_ARRAY_BUFFER buffer object binding point and the pointer argument is not NULL.
In this case, both GL_ARRAY_BUFFER and pointer are null. I suppose the call is not necessary, and I should just call glDisableVertexAttribArray.
Also, I doubt this is the problem, but I am using GLIntercept, and read “OpenGL3.0 + pure core profiles do not work correctly (will be fixed).”
I am using GL 3.3 core profile and tested on both NVIDIA and ATI so I think this is my fault, not a driver issue.