Lines Matching refs:ve
59 } ve[17];
104 state.ve[id].buffer = data[0] >> 27;
105 state.ve[id].valid = !!(data[0] & (1 << 26));
106 state.ve[id].type = (data[0] >> 16) & 0x1ff;
107 state.ve[id].offset = data[0] & 0x7ff;
108 state.ve[id].swizzle[0] = get_ve_component(data[1], 0);
109 state.ve[id].swizzle[1] = get_ve_component(data[1], 1);
110 state.ve[id].swizzle[2] = get_ve_component(data[1], 2);
111 state.ve[id].swizzle[3] = get_ve_component(data[1], 3);
114 static void vertices_sint16_out(const struct vertex_elements *ve, const int16_t *v, int max)
120 switch (ve->swizzle[c]) {
135 static void vertices_float_out(const struct vertex_elements *ve, const float *f, int max)
141 switch (ve->swizzle[c]) {
156 static void ve_out(const struct vertex_elements *ve, const void *ptr)
158 switch (ve->type) {
160 vertices_float_out(ve, ptr, 1);
163 vertices_float_out(ve, ptr, 2);
166 vertices_float_out(ve, ptr, 3);
169 vertices_float_out(ve, ptr, 4);
172 vertices_sint16_out(ve, ptr, 1);
175 vertices_sint16_out(ve, ptr, 2);
178 vertices_sint16_out(ve, ptr, 4);
181 vertices_sint16_out(ve, ptr, 1);
184 vertices_sint16_out(ve, ptr, 2);
187 vertices_sint16_out(ve, ptr, 4);
197 const struct vertex_elements *ve = &state.ve[i];
198 const struct vertex_buffer *vb = &state.vb[ve->buffer];
199 const void *ptr = vb->ptr + v * vb->pitch + ve->offset;
201 if (!ve->valid)
205 assert(ve->offset + v*vb->pitch < vb->size);
207 ve_out(ve, ptr);
209 while (++i <= state.num_ve && !state.ve[i].valid)
528 memset(state.ve, 0, sizeof(state.ve)); /* XXX? */