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.h21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 78132de4254..dccc152ad87 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -1528,18 +1528,21 @@ struct gl_vertex_array
*/
struct gl_array_attributes
{
- GLint Size; /**< Components per element (1,2,3,4) */
+ /** Points to client array data. Not used when a VBO is bound */
+ const GLubyte *Ptr;
+ /** Offset of the first element relative to the binding offset */
+ GLuint RelativeOffset;
+ GLshort Stride; /**< Stride as specified with gl*Pointer() */
GLenum16 Type; /**< Datatype: GL_FLOAT, GL_INT, etc */
GLenum16 Format; /**< Default: GL_RGBA, but may be GL_BGRA */
- GLsizei Stride; /**< Stride as specified with gl*Pointer() */
- const GLubyte *Ptr; /**< Points to client array data. Not used when a VBO is bound */
- GLintptr RelativeOffset; /**< Offset of the first element relative to the binding offset */
GLboolean Enabled; /**< Whether the array is enabled */
- GLboolean Normalized; /**< Fixed-point values are normalized when converted to floats */
- GLboolean Integer; /**< Fixed-point values are not converted to floats */
- GLboolean Doubles; /**< double precision values are not converted to floats */
- GLuint _ElementSize; /**< Size of each element in bytes */
- GLuint BufferBindingIndex; /**< Vertex buffer binding */
+ GLubyte Size; /**< Components per element (1,2,3,4) */
+ unsigned Normalized:1; /**< Fixed-point values are normalized when converted to floats */
+ unsigned Integer:1; /**< Fixed-point values are not converted to floats */
+ unsigned Doubles:1; /**< double precision values are not converted to floats */
+ unsigned _ElementSize:8; /**< Size of each element in bytes */
+ /** Index into gl_vertex_array_object::BufferBinding[] array */
+ unsigned BufferBindingIndex:6;
};