I have my program working with VBO's efficiently however it has come to my knowledge that no-one I know with the exception of 1 person has a computer that even comes close to supporting OpenGL 3.0. When they all run programs I have made all they get are flat textures that have no depth because their cards don't support VBO's nor the Shader language that I am using.
I am now coding in support for older computers (Prior OpenGL 3.0 support). I don't want to code in drawing in immediate mode unless completely necessary, so I'm reverting to Vertex Arrays.
What version of OpenGL is required to support Vertex Arrays?
I cant seem to locate this anywhere.
Extension Registry: http://www.opengl.org/registry/
Just to clarify I am talking about Client-side vertex arrays not to be confused with server-side Vertex Array Objects (VAO's) or Vertex Buffer Objects (VBO's)
I'll be somewhat comprehensive here.
The basic vertex array API has been core since OpenGL 1.1.
OpenGL 1.1 introduced:
glDrawArrays
and glDrawElements
(as well as glArrayElement
, but really nobody should use that for anything ever) for rendering.glVertexPointer
, glTexCoordPointer
, glNormalPointer
, and glColorPointer
for "attributes". Note that you only get one texture coordinate pointer.OpenGL 1.2 introduced:
glDrawRangeElements
, for improved performance on some drivers. Not very useful these days, but if you're coding for old hardware, look into it.OpenGL 1.3 introduced:
glActiveTexture
, thus allowing GL_MAX_TEXTURE_UNITS
numbers of glTexCoordPointer
s.OpenGL 1.4 introduced:
glMultiDrawArrays
and glMultiDrawElements
.glSecondaryColorPointer
and glFogCoordPointer
.OpenGL 1.5 introduced:
OpenGL 2.0 introduced:
glVertexAttribPointer
for generic shader attributes. Usable with client-side vertex arrays.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With