Lines Matching refs:si
80 const struct wined3d_stream_info *si, UINT NumVertexes, GLenum glPrimType,
122 if (si->use_map & (1 << WINED3D_FFP_POSITION))
124 element = &si->elements[WINED3D_FFP_POSITION];
128 if (si->use_map & (1 << WINED3D_FFP_NORMAL))
130 element = &si->elements[WINED3D_FFP_NORMAL];
139 if (si->use_map & (1 << WINED3D_FFP_DIFFUSE))
141 element = &si->elements[WINED3D_FFP_DIFFUSE];
152 if (si->use_map & (1 << WINED3D_FFP_SPECULAR))
154 element = &si->elements[WINED3D_FFP_SPECULAR];
160 || si->elements[WINED3D_FFP_POSITION].format_desc->format == WINED3DFMT_R32G32B32A32_FLOAT)
212 if (si->use_map & (1 << (WINED3D_FFP_TEXCOORD0 + coordIdx)))
214 element = &si->elements[WINED3D_FFP_TEXCOORD0 + coordIdx];
259 ptr = texCoords[coord_idx] + (SkipnStrides * si->elements[WINED3D_FFP_TEXCOORD0 + coord_idx].stride);
262 multi_texcoord_funcs[si->elements[WINED3D_FFP_TEXCOORD0 + coord_idx].format_desc->emit_idx](
268 const void *ptrToCoords = diffuse + SkipnStrides * si->elements[WINED3D_FFP_DIFFUSE].stride;
270 diffuse_funcs[si->elements[WINED3D_FFP_DIFFUSE].format_desc->emit_idx](ptrToCoords);
291 const void *ptrToCoords = specular + SkipnStrides * si->elements[WINED3D_FFP_SPECULAR].stride;
293 specular_funcs[si->elements[WINED3D_FFP_SPECULAR].format_desc->emit_idx](ptrToCoords);
304 const void *ptrToCoords = normal + SkipnStrides * si->elements[WINED3D_FFP_NORMAL].stride;
305 normal_funcs[si->elements[WINED3D_FFP_NORMAL].format_desc->emit_idx](ptrToCoords);
310 const void *ptrToCoords = position + SkipnStrides * si->elements[WINED3D_FFP_POSITION].stride;
311 position_funcs[si->elements[WINED3D_FFP_POSITION].format_desc->emit_idx](ptrToCoords);
436 static void drawStridedSlowVs(IWineD3DDevice *iface, const struct wined3d_stream_info *si, UINT numberOfVertices,
479 if (!(si->use_map & (1 << i))) continue;
481 ptr = si->elements[i].data +
482 si->elements[i].stride * SkipnStrides +
483 stateblock->streamOffset[si->elements[i].stream_idx];
485 send_attribute(This, si->elements[i].format_desc->format, i, ptr);
494 static inline void drawStridedInstanced(IWineD3DDevice *iface, const struct wined3d_stream_info *si,
500 UINT instancedData[sizeof(si->elements) / sizeof(*si->elements) /* 16 */];
531 for (i = 0; i < sizeof(si->elements) / sizeof(*si->elements); ++i)
533 if (!(si->use_map & (1 << i))) continue;
535 if (stateblock->streamFlags[si->elements[i].stream_idx] & WINED3DSTREAMSOURCE_INSTANCEDATA)
546 const BYTE *ptr = si->elements[instancedData[j]].data +
547 si->elements[instancedData[j]].stride * i +
548 stateblock->streamOffset[si->elements[instancedData[j]].stream_idx];
549 if (si->elements[instancedData[j]].buffer_object)
552 (struct wined3d_buffer *)stateblock->streamSource[si->elements[instancedData[j]].stream_idx];
556 send_attribute(This, si->elements[instancedData[j]].format_desc->format, instancedData[j], ptr);