diff options
Diffstat (limited to 'src/mesa/vbo/vbo_exec.h')
-rw-r--r-- | src/mesa/vbo/vbo_exec.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/mesa/vbo/vbo_exec.h b/src/mesa/vbo/vbo_exec.h index 2c1fb1e6e3a..33d12986e10 100644 --- a/src/mesa/vbo/vbo_exec.h +++ b/src/mesa/vbo/vbo_exec.h @@ -95,9 +95,13 @@ struct vbo_exec_context struct vbo_exec_copied_vtx copied; GLbitfield64 enabled; /**< mask of enabled vbo arrays. */ - GLubyte attrsz[VBO_ATTRIB_MAX]; /**< nr. of attrib components (1..4) */ - GLenum16 attrtype[VBO_ATTRIB_MAX]; /**< GL_FLOAT, GL_DOUBLE, GL_INT, etc */ - GLubyte active_sz[VBO_ATTRIB_MAX]; /**< attrib size (nr. 32-bit words) */ + + /* Keep these packed in a structure for faster access. */ + struct { + GLenum16 type; /**< GL_FLOAT, GL_DOUBLE, GL_INT, etc */ + GLubyte active_size; /**< number of components, but can shrink */ + GLubyte size; /**< number of components (1..4) */ + } attr[VBO_ATTRIB_MAX]; /** pointers into the current 'vertex' array, declared above */ fi_type *attrptr[VBO_ATTRIB_MAX]; |