OpenGL extension APPLE.vertex_array_object
This module customises the behaviour of the OpenGL.raw.GL.APPLE.vertex_array_object to provide a more Python-friendly API
Overview (from the spec)
This extension introduces named vertex array objects which encapsulate vertex array state on the client side. The main purpose of these objects is to keep pointers to static vertex data and provide a name for different sets of static vertex data.
By extending vertex array range functionality this extension allows multiple vertex array ranges to exist at one time, including their complete sets of state, in manner analogous to texture objects.
GenVertexArraysAPPLE creates a list of n number of vertex array object names. After creating a name, BindVertexArrayAPPLE associates the name with a vertex array object and selects this vertex array and its associated state as current. To get back to the default vertex array and its associated state the client should bind to vertex array named 0.
Once a client is done using a vertex array object it can be deleted with DeleteVertexArraysAPPLE. The client is responsible for allocating and deallocating the memory used by the vertex array data, while the DeleteVertexArraysAPPLE command deletes vertex array object names and associated state only.
The official definition of this extension is available here: