summaryrefslogtreecommitdiffstats
path: root/src/mesa/vbo/vbo_context.h
diff options
context:
space:
mode:
authorKeith Whitwell <[email protected]>2006-10-30 20:16:35 +0000
committerKeith Whitwell <[email protected]>2006-10-30 20:16:35 +0000
commitfd2756006a0baf63f60548d8f509de5b9a143608 (patch)
treedab83baaadc0ffd77c5dfa31a0e30084288683e6 /src/mesa/vbo/vbo_context.h
parente8abd098b36c30d76b4c396970fd793ae58e0702 (diff)
Move edgeflag into the VERT_ATTRIB_SEVEN slot. This means that our
NV_vertex_program implementation has slightly incorrect aliasing behaviour. I think this is reasonable given the simplification and the fact that the mainstream ARB_vp continues to have the correct behaviour.
Diffstat (limited to 'src/mesa/vbo/vbo_context.h')
-rw-r--r--src/mesa/vbo/vbo_context.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/mesa/vbo/vbo_context.h b/src/mesa/vbo/vbo_context.h
index 982da004378..cd024720232 100644
--- a/src/mesa/vbo/vbo_context.h
+++ b/src/mesa/vbo/vbo_context.h
@@ -57,13 +57,21 @@
struct vbo_context {
- struct gl_client_array legacy_currval[16];
- struct gl_client_array generic_currval[16];
- struct gl_client_array mat_currval[16];
+ struct gl_client_array currval[VBO_ATTRIB_MAX];
+
+ /* These point into the above. TODO: remove.
+ */
+ struct gl_client_array *legacy_currval;
+ struct gl_client_array *generic_currval;
+ struct gl_client_array *mat_currval;
GLuint map_vp_none[32];
GLuint map_vp_arb[32];
+ GLfloat *current[VBO_ATTRIB_MAX]; /* points into ctx->Current, ctx->Light.Material */
+ GLfloat CurrentFloatEdgeFlag;
+
+
struct vbo_exec_context exec;
struct vbo_save_context save;