glGenVertexArraysOES() 的作用是什么?文档在哪里?

What does glGenVertexArraysOES() do and where is the documentation?

我开始使用 Swift OpenGL ES "Game" 项目模板 XCode 7 并且有一段非常令人沮丧的时间。似乎有很多关于将 OpenGL ES 与 Objective C 一起使用的信息,以及一些关于将常规 OpenGL 与 Swift 一起使用的信息,但是关于在 [=23= 上将 OpenGL ES 与 Swift 一起使用的信息很少].

在模板的 GameViewController.swift 中,在 setupGL() 函数中调用了 glGenVertexArraysOES(1, &vertexArray)documentation 完全没有帮助。谷歌搜索发现很多人使用 glGenVertexArraysOES(),但没有记录它是什么或如何使用它。

此函数的作用是什么?它在哪里记录?

glGenVertexArraysOES生成顶点数组。顶点数组可用于描述几何数据(顶点、索引)如何存储在顶点缓冲区对象中(哪个属性索引对应于哪个属性,如位置、纹理坐标等)。 opengl.org 上有文档(功能与*OES 版本相同):

glGenVertexArrays — generate vertex array object names

glGenVertexArrays returns n vertex array object names in arrays. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenVertexArrays.

Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless they are first deleted with glDeleteVertexArrays.

The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, but they acquire state and type only when they are first bound