OpenGL Vertex Arrays所需的版本

Cod*_*ker 3 arrays opengl server-side vertex

我有自己的程序有效地使用VBO,但据我所知,除了1人之外,我所知道的任何人都没有一台计算机甚至可以支持OpenGL 3.0.当他们都运行程序时,我所得到的只是平面纹理,没有深度,因为他们的卡不支持VBO,也不支持我使用的Shader语言.

我现在编码支持旧计算机(Prior OpenGL 3.0支持).除非完全必要,否则我不想在立即模式下绘制代码,因此我将恢复为Vertex Arrays.

支持Vertex阵列需要什么版本的OpenGL?

我似乎无法在任何地方找到它.

扩展注册表:http: //www.opengl.org/registry/

只是为了澄清我在说客户端顶点数组不要与服务器端顶点数组对象(VAO)或顶点缓冲对象(VBO)混淆

Nic*_*las 7

我在这里会有点全面.

自OpenGL 1.1以来,基本的顶点数组API一直是核心.

OpenGL 1.1介绍:

  • glDrawArrays和glDrawElements(以及glArrayElement,但实际上任何人都不应使用,对于任何事情永远)进行渲染.
  • glVertexPointer,, glTexCoordPointer和glNormalPointer,以及glColorPointer"属性".请注意,您只获得一个纹理坐标指针.

OpenGL 1.2介绍:

  • glDrawRangeElements,以提高某些驱动程序的性能.这些天不是很有用,但是如果你要编写旧硬件,请查看它.

OpenGL 1.3介绍:

  • glActiveTexture因此允许s的GL_MAX_TEXTURE_UNITS数量glTexCoordPointer.

OpenGL 1.4介绍:

  • glMultiDrawArrays和glMultiDrawElements.
  • glSecondaryColorPointer和glFogCoordPointer.

OpenGL 1.5介绍:

  • 缓冲对象.

OpenGL 2.0介绍:

  • glVertexAttribPointer用于通用着色器属性.可用于客户端顶点数组.

  • 这很棒!毕竟不需要立即模式.如果他们的计算机不支持OpenGL 1.1,我确信他们不应该运行游戏. (2认同)

Vic*_*ian 5

我在规范中可以找到的最早提到的顶点数组是OpenGL 1.1(第2.8节"顶点数组",第21页).