summaryrefslogtreecommitdiff
path: root/src/mesa/main/mtypes.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/main/mtypes.h')
-rw-r--r--src/mesa/main/mtypes.h26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index e9893dda61..4ef08dd074 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -1663,11 +1663,10 @@ struct gl_client_array
};
-/**
- * Vertex array state
- */
-struct gl_array_attrib
-{
+struct gl_array_object {
+ /** Name of the array object as received from glGenVertexArrayAPPLE. */
+ GLuint Name;
+
/** Conventional vertex arrays */
/*@{*/
struct gl_client_array Vertex;
@@ -1683,11 +1682,22 @@ struct gl_array_attrib
/** Generic arrays for vertex programs/shaders; */
struct gl_client_array VertexAttrib[VERT_ATTRIB_MAX];
+ GLbitfield _Enabled; /**< mask of _NEW_ARRAY_* values */
+};
+
+
+/**
+ * Vertex array state
+ */
+struct gl_array_attrib
+{
+ struct gl_array_object *ArrayObj;
+ struct gl_array_object *DefaultArrayObj;
+
GLint ActiveTexture; /**< Client Active Texture */
GLuint LockFirst; /**< GL_EXT_compiled_vertex_array */
GLuint LockCount; /**< GL_EXT_compiled_vertex_array */
- GLbitfield _Enabled; /**< mask of _NEW_ARRAY_* values */
GLbitfield NewState; /**< mask of _NEW_ARRAY_* values */
#if FEATURE_ARB_vertex_buffer_object
@@ -2103,6 +2113,9 @@ struct gl_shared_state
struct _mesa_HashTable *FrameBuffers;
#endif
+ /** Objects associated with the GL_APPLE_vertex_array_object extension. */
+ struct _mesa_HashTable *ArrayObjects;
+
void *DriverData; /**< Device driver shared state */
};
@@ -2460,6 +2473,7 @@ struct gl_extensions
/* vendor extensions */
GLboolean APPLE_client_storage;
GLboolean APPLE_packed_pixels;
+ GLboolean APPLE_vertex_array_object;
GLboolean ATI_texture_mirror_once;
GLboolean ATI_texture_env_combine3;
GLboolean ATI_fragment_shader;