On Wednesday, 12 August 2015 at 05:58:23 UTC, BBasile wrote:
On Wednesday, 12 August 2015 at 05:46:27 UTC, Mike Parker wrote:
On Wednesday, 12 August 2015 at 05:34:22 UTC, BBasile wrote:
[...]


It seems to me that your driver is doing things it isn't actually supposed to do. This code is binding a vertex buffer object with a function which is supposed to bind a vertex array object. The only reason the vbo is bound at all is because of the call to glBindBuffer in the misnamed initVAO -- a function which never even initializes a vao. The spec actually requires a vao to be created and a shader program to be bound, so I would expect a conforming driver to show nothing.

I expect a couple of calls to glError will not come up empty.

Right, the triangle is well drawn but glGetError returns 1282. Maybe the OP has a different OGL implementation. At least NVidia driver renders a triangle for this code.

Depends on what context gets created in this case. A core profile context shouldn't render anything without a bound shader. NVidia likes backwards compatibility, so it's possible this code works, it's just using fixed function pipeline rendering, which isn't typically what people want when they mention "GL3". Might as well use glBegin/glEnd, and it would work too.

Reply via email to