#include <mtypes.h>
Defined by the GL_APPLE_vertex_array_object extension, but a nice encapsulation in any case.
Data Fields | |
GLuint | Name |
Name of the array object as received from glGenVertexArrayAPPLE. | |
GLint | RefCount |
_glthread_Mutex | Mutex |
GLboolean | VBOonly |
require all arrays to live in VBOs? | |
struct gl_client_array | VertexAttrib [MAX_VERTEX_GENERIC_ATTRIBS] |
Generic arrays for vertex programs/shaders. | |
GLbitfield | _Enabled |
Mask of _NEW_ARRAY_* values indicating which arrays are enabled. | |
GLuint | _MaxElement |
Min of all enabled arrays' _MaxElement. | |
struct gl_client_array | Vertex |
Conventional vertex arrays. | |
struct gl_client_array | Weight |
struct gl_client_array | Normal |
struct gl_client_array | Color |
struct gl_client_array | SecondaryColor |
struct gl_client_array | FogCoord |
struct gl_client_array | Index |
struct gl_client_array | EdgeFlag |
struct gl_client_array | TexCoord [MAX_TEXTURE_COORD_UNITS] |
struct gl_client_array | PointSize |
GLuint gl_array_object::Name |
Name of the array object as received from glGenVertexArrayAPPLE.
_glthread_Mutex gl_array_object::Mutex |
GLboolean gl_array_object::VBOonly |
require all arrays to live in VBOs?
struct gl_client_array gl_array_object::Vertex [read] |
Conventional vertex arrays.
struct gl_client_array gl_array_object::Weight [read] |
struct gl_client_array gl_array_object::Normal [read] |
struct gl_client_array gl_array_object::Color [read] |
struct gl_client_array gl_array_object::SecondaryColor [read] |
struct gl_client_array gl_array_object::FogCoord [read] |
struct gl_client_array gl_array_object::Index [read] |
struct gl_client_array gl_array_object::EdgeFlag [read] |
struct gl_client_array gl_array_object::TexCoord[MAX_TEXTURE_COORD_UNITS] [read] |
struct gl_client_array gl_array_object::PointSize [read] |
struct gl_client_array gl_array_object::VertexAttrib[MAX_VERTEX_GENERIC_ATTRIBS] [read] |
Generic arrays for vertex programs/shaders.
For NV vertex programs, these attributes alias and take priority over the conventional attribs above. For ARB vertex programs and GLSL vertex shaders, these attributes are separate.
GLbitfield gl_array_object::_Enabled |
Mask of _NEW_ARRAY_* values indicating which arrays are enabled.
GLuint gl_array_object::_MaxElement |
Min of all enabled arrays' _MaxElement.
When arrays reside inside VBOs we can determine the max legal (in bounds) glDrawElements array index.