Lines Matching full:exec
36 static void clear_active_eval1( struct vbo_exec_context *exec, GLuint attr )
38 assert(attr < Elements(exec->eval.map1));
39 exec->eval.map1[attr].map = NULL;
42 static void clear_active_eval2( struct vbo_exec_context *exec, GLuint attr )
44 assert(attr < Elements(exec->eval.map2));
45 exec->eval.map2[attr].map = NULL;
48 static void set_active_eval1( struct vbo_exec_context *exec, GLuint attr, GLuint dim,
51 assert(attr < Elements(exec->eval.map1));
52 if (!exec->eval.map1[attr].map) {
53 exec->eval.map1[attr].map = map;
54 exec->eval.map1[attr].sz = dim;
58 static void set_active_eval2( struct vbo_exec_context *exec, GLuint attr, GLuint dim,
61 assert(attr < Elements(exec->eval.map2));
62 if (!exec->eval.map2[attr].map) {
63 exec->eval.map2[attr].map = map;
64 exec->eval.map2[attr].sz = dim;
68 void vbo_exec_eval_update( struct vbo_exec_context *exec )
70 struct gl_context *ctx = exec->ctx;
76 clear_active_eval1( exec, attr );
77 clear_active_eval2( exec, attr );
81 set_active_eval1( exec, VBO_ATTRIB_COLOR0, 4, &ctx->EvalMap.Map1Color4 );
84 set_active_eval2( exec, VBO_ATTRIB_COLOR0, 4, &ctx->EvalMap.Map2Color4 );
87 set_active_eval1( exec, VBO_ATTRIB_TEX0, 4, &ctx->EvalMap.Map1Texture4 );
89 set_active_eval1( exec, VBO_ATTRIB_TEX0, 3, &ctx->EvalMap.Map1Texture3 );
91 set_active_eval1( exec, VBO_ATTRIB_TEX0, 2, &ctx->EvalMap.Map1Texture2 );
93 set_active_eval1( exec, VBO_ATTRIB_TEX0, 1, &ctx->EvalMap.Map1Texture1 );
96 set_active_eval2( exec, VBO_ATTRIB_TEX0, 4, &ctx->EvalMap.Map2Texture4 );
98 set_active_eval2( exec, VBO_ATTRIB_TEX0, 3, &ctx->EvalMap.Map2Texture3 );
100 set_active_eval2( exec, VBO_ATTRIB_TEX0, 2, &ctx->EvalMap.Map2Texture2 );
102 set_active_eval2( exec, VBO_ATTRIB_TEX0, 1, &ctx->EvalMap.Map2Texture1 );
105 set_active_eval1( exec, VBO_ATTRIB_NORMAL, 3, &ctx->EvalMap.Map1Normal );
108 set_active_eval2( exec, VBO_ATTRIB_NORMAL, 3, &ctx->EvalMap.Map2Normal );
111 set_active_eval1( exec, VBO_ATTRIB_POS, 4, &ctx->EvalMap.Map1Vertex4 );
113 set_active_eval1( exec, VBO_ATTRIB_POS, 3, &ctx->EvalMap.Map1Vertex3 );
116 set_active_eval2( exec, VBO_ATTRIB_POS, 4, &ctx->EvalMap.Map2Vertex4 );
118 set_active_eval2( exec, VBO_ATTRIB_POS, 3, &ctx->EvalMap.Map2Vertex3 );
129 set_active_eval1( exec, attr, 4, &ctx->EvalMap.Map1Attrib[attr] );
133 set_active_eval2( exec, attr, 4, &ctx->EvalMap.Map2Attrib[attr] );
137 exec->eval.recalculate_maps = 0;
142 void vbo_exec_do_EvalCoord1f(struct vbo_exec_context *exec, GLfloat u)
147 struct gl_1d_map *map = exec->eval.map1[attr].map;
155 exec->eval.map1[attr].sz,
158 COPY_SZ_4V( exec->vtx.attrptr[attr],
159 exec->vtx.attrsz[attr],
166 if (exec->eval.map1[0].map) {
167 struct gl_1d_map *map = exec->eval.map1[0].map;
174 exec->eval.map1[0].sz,
177 if (exec->eval.map1[0].sz == 4)
186 void vbo_exec_do_EvalCoord2f( struct vbo_exec_context *exec,
192 struct gl_2d_map *map = exec->eval.map2[attr].map;
203 exec->eval.map2[attr].sz,
206 COPY_SZ_4V( exec->vtx.attrptr[attr],
207 exec->vtx.attrsz[attr],
214 if (exec->eval.map2[0].map) {
215 struct gl_2d_map *map = exec->eval.map2[0].map;
222 if (exec->ctx->Eval.AutoNormal) {
227 exec->eval.map2[0].sz,
230 if (exec->eval.map2[0].sz == 4) {
245 COPY_SZ_4V( exec->vtx.attrptr[VBO_ATTRIB_NORMAL],
246 exec->vtx.attrsz[VBO_ATTRIB_NORMAL],
252 exec->eval.map2[0].sz,
256 if (exec->vtx.attrsz[0] == 4)