Why wined3d_device_copy_sub_resource_region() isn't implemented for WINED3D_RTYPE_CUBE_TEXTURE? This seems the easiest option to me (if we exclude the already available one) but it looks like I'm having an issue with them: the destination surface is smaller than the source one. I'm doing something like + if (src_rect) + { + src_box.left = src_rect->left; + src_box.top = src_rect->top; + src_box.right = src_rect->right; + src_box.bottom = src_rect->bottom; + src_box.front = 0; + src_box.back = 1; + } + else + { + src_box.left = 0; + src_box.top = 0; + src_box.right = src_desc.width; + src_box.bottom = src_desc.height; + src_box.front = 0; + src_box.back = 1; + } + + hr = wined3d_device_copy_sub_resource_region(device->wined3d_device, + wined3d_texture_get_resource(dst->wined3d_texture), dst->sub_resource_idx, dst_point ? dst_point->x : 0, + dst_point ? dst_point->y : 0, 0, wined3d_texture_get_resource(src->wined3d_texture), + src->sub_resource_idx, &src_box); But test_cube_wrap() (d3d9/visual.c) fails in UpdateSurface (if I got debug right); the destination surface is smaller than the src rect (I'm I'm either getting the wrong sub index (e.g. the next mip) or Ciao, Riccardo 2015-10-27 16:15 GMT+01:00 Riccardo Bortolato <rikyz619(a)gmail.com>:
OK, but since I could not find a definite answer I tried another road.
I assume you don't even want to look at it but use those methods instead.
Ciao, Riccardo
2015-10-27 15:40 GMT+01:00 Henri Verbeet <hverbeet(a)gmail.com>:
On 22 October 2015 at 12:01, Riccardo Bortolato <rikyz619(a)gmail.com> wrote:
enabled previously failing test in device.c removed wined3d_device_update_surface from wined3d and replaced its usage with surface_upload_from_surface.
This was mentioned in the discussion in the other thread, but just for the record, the options are either wined3d_device_update_sub_resource() or wined3d_device_copy_sub_resource_region().