Zebediah Figura (@zfigura) commented about dlls/ddraw/device.c:
wined3d_streaming_buffer_map(device->wined3d_device, &device->index_buffer, D3DMAXNUMVERTICES, sizeof(*device->ddraw_device_buffer.buffer_indices),
&device->ddraw_device_buffer.idx_buffer_pos, (void**) &device->ddraw_device_buffer.buffer_indices);
wined3d_streaming_buffer_unmap(&device->index_buffer);
- } else if (fvf != device->ddraw_device_buffer.fvf) {
/* Not the same fvf as the buffered one. Cannot buffer more of those */
TRACE_(ddraw_perf)("Buffering failed due to mismatched fvf %ld != buffer.fvf %ld \n", fvf, device->ddraw_device_buffer.fvf);
return WINED3DERR_NOTAVAILABLE;
- } else if (primitive_type != device->ddraw_device_buffer.primitive_type) {
TRACE_(ddraw_perf)("Buffering failed due to mismatched primitive_type %d != buffer.primitive_type %d \n", primitive_type, device->ddraw_device_buffer.primitive_type);
return WINED3DERR_NOTAVAILABLE;
- }
- /* append all the vertices to the buffer */
- memcpy(device->ddraw_device_buffer.buffer_vertices + device->ddraw_device_buffer.buffer_vertex_count * stride, vertices, vertex_count * stride);
- TRACE_(ddraw_perf)("vertex count %lu stride %d buffer_vertex_count %05lu buffer_indice_count %05lu\n", vertex_count, stride,
device->ddraw_device_buffer.buffer_vertex_count, device->ddraw_device_buffer.buffer_indice_count);
I don't think we need this trace, but if we do, we want to use the existing d3d_perf channel. Same for the other ddraw_perf traces below.