Commit Graph

102 Commits

Author SHA1 Message Date
Józef Kucia d39630fc39 d3d9: Do not decrease swapchain surface refcount when it is already 0.
Based on a patch by Henri Verbeet.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-13 18:50:12 +01:00
Józef Kucia 6664601b83 d3d9: Return D3D_OK from UnlockRect() for not locked textures.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-13 16:27:44 +01:00
Józef Kucia e8360b8eaa d3d9: Do not create render target view while surface refcount is equal to 0.
This fixes a regression introduced by commit
b005ad6f90.

A render target view has to be created when a surface is referenced.
Otherwise the render target view reference count would be inconsistent
with the surface reference count.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-06 16:29:07 +01:00
Józef Kucia c1aba7cd8b d3d9: Reject render target surfaces created for other devices.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-03 16:18:40 +01:00
Nikolay Sivov 53b7a2a1a1 wined3d: Add texture flag to indicate GetDC() capability.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 23:34:25 +09:00
Henri Verbeet 53165034ba wined3d: Unify resource preloads.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 12:08:58 +09:00
Henri Verbeet c3d74913b7 wined3d: Be more lenient with wined3d_texture_get_dc() calls from ddraw.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-13 23:01:06 +09:00
Henri Verbeet 7fad350ccf d3d9: Use wined3d_texture_get_sub_resource_desc() in d3d9_surface_GetDesc().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-02 12:08:10 +09:00
Riccardo Bortolato edf003771b d3d9: Replace wined3d surface refcounting with texture refcounting.
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-28 13:44:12 +09:00
Józef Kucia b83beb18a2 d3d9: Use wined3d_resource_{map, unmap}() instead of wined3d_texture_{map, unmap}().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-05 22:02:23 +09:00
Riccardo Bortolato 96dd793756 wined3d: Introduce wined3d_texture_release_dc().
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 22:31:29 +09:00
Riccardo Bortolato a2f2d238d4 wined3d: Introduce wined3d_texture_get_dc().
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 22:31:29 +09:00
Riccardo Bortolato 3e491662ba wined3d: Introduce wined3d_rendertarget_view_create_from_sub_resource().
Initial usage in d3d9.

Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-28 22:31:28 +09:00
Riccardo Bortolato 1745c5f960 d3d9: In surface_init check for GetDC supported at texture level (avoid using a subresource).
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-22 17:31:58 +09:00
Riccardo Bortolato 8f03c4413b d3d9: Replace wined3d_surface_preload with wined3d_texture_preload.
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 01:04:31 +09:00
Riccardo Bortolato 9b02e116bd d3d9: Don't use a wined3d_surface in d3d9_surface_GetDesc.
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 23:34:56 +09:00
Riccardo Bortolato 736ca38d11 d3d9: Make use of wined3d_texture_unmap in d3d9_surface_UnlockRect.
Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 23:34:56 +09:00
Riccardo Bortolato df1101ff68 d3d9: Make use of wined3d_texture_map in d3d9_surface_LockRect.
Also store wined3d_texture and sub_resource_idx in d3d9_surface.

Signed-off-by: Riccardo Bortolato <rikyz619@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-12 23:34:56 +09:00
Riccardo Bortolato 1d1487105d wined3d: Pass a wined3d_box to wined3d_surface_map..
Introduced a new surface_check_block_align function that accepts a
wined3d_box, eventually the old _rect version will be completely
replaced.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 21:28:51 +09:00
Henri Verbeet b005ad6f90 wined3d: Use rendertarget views for color output instead of surfaces. 2014-08-21 12:24:42 +02:00
Henri Verbeet d1d48d3194 d3d9: The "forwardReference" field in struct d3d9_surface is always a texture, if set. 2014-08-18 12:47:01 +02:00
Stefan Dösinger eb0daf08c6 d3d9: Ignore SetPriority and GetPriority calls on surfaces. 2014-07-09 14:43:30 +02:00
Stefan Dösinger 50de4cda8f d3d9: Use the private store api for surfaces. 2014-03-24 20:20:17 +01:00
Stefan Dösinger 96a74e0cf7 d3d9: Introduce a resource structure. 2014-03-24 20:20:15 +01:00
Henri Verbeet afc3d2ab70 wined3d: Create surfaces inside wined3d. 2013-11-15 12:00:26 +01:00
Lasse Rasinen eeefed3dd0 d3d9: Update locked_rect only if wined3d_surface_map succeeds. 2013-10-28 19:31:12 +01:00
Henri Verbeet f31d2485be d3d9: Don't mask out internal wined3d usage flags in surface_init(). 2013-10-02 11:05:39 +02:00
Henri Verbeet d6bc4fe71a wined3d: Allow surface flags to be passed to texture creation functions. 2013-06-06 11:47:19 +02:00
Henri Verbeet ce912d5149 wined3d: Get rid of the surface_type parameter to wined3d_surface_create(). 2013-01-17 12:21:55 +01:00
Henri Verbeet ddbe791d37 wined3d: Set texture_level in surface_set_texture_target() as well. 2012-10-24 11:24:22 +02:00
Henri Verbeet cb9cc2ccee d3d9: Get rid of IDirect3DSurface9Impl. 2012-05-30 17:18:00 +02:00
Henri Verbeet 2a63fe6624 d3d9: Get rid of IDirect3DDevice9Impl. 2012-05-29 10:45:09 +02:00
Henri Verbeet 8cef8b3587 wined3d: Unify the wined3d_mapped_rect and wined3d_mapped_box structures. 2012-04-13 10:48:51 +02:00
Henri Verbeet 949f7b4524 d3d9: COM cleanup for the IDirect3DVertexDeclaration9 interface. 2012-04-13 10:48:46 +02:00
Henri Verbeet fa3838e9de d3d9: Don't return a pointer to the implementation in IDirect3DSurface9Impl_QueryInterface(). 2012-03-30 10:44:18 +02:00
Henri Verbeet 3769afa33d wined3d: Get rid of the WINED3DSURFTYPE typedef. 2012-01-20 13:31:33 +01:00
Henri Verbeet e53a277305 wined3d: Get rid of the WINED3DPOOL typedef. 2012-01-18 12:37:38 +01:00
Henri Verbeet bd3b0ba697 d3d9: Don't expose wined3d internal flags to the application. 2012-01-11 17:47:18 +01:00
Henri Verbeet eafebc0491 wined3d: Get rid of the WINED3DLOCKED_RECT typedef. 2011-12-06 15:50:58 +01:00
Henri Verbeet 3430e11605 wined3d: Add a flags parameter to wined3d_surface_create(). 2011-11-30 11:50:48 +01:00
Michael Stefaniuc 4e31d28cff d3d9: COM cleanup for the IDirect3DSurface9 iface. 2011-07-07 12:32:19 +02:00
Michael Stefaniuc a7530e7892 d3d9: Use unsafe_impl_from_IDirect3DSurface9 for app provided ifaces. 2011-07-07 12:32:16 +02:00
Henri Verbeet 0dd6b20af6 d3d9: Implement IDirect3DSurface9 private data handling on top of wined3d_resource. 2011-06-22 11:25:15 +02:00
Henri Verbeet 8d4ca1f815 wined3d: Remove COM from the device implementation. 2011-05-17 10:06:18 +02:00
Henri Verbeet 00a5f38595 wined3d: Remove object creation methods from the IWineD3DDevice interface. 2011-05-11 14:56:48 +02:00
Henri Verbeet 1c1de920e3 wined3d: Remove COM from the surface implementation. 2011-04-29 16:52:13 +02:00
Michael Stefaniuc d5739cd2c3 d3d9: Finish the COM cleanup of the IDirect3DDevice9Ex iface. 2011-04-25 11:40:35 +02:00
Henri Verbeet c852200b03 wined3d: Get rid of IWineD3DSurface::GetType(). 2011-04-22 10:44:28 +02:00
Henri Verbeet 2b18192e7a wined3d: Get rid of IWineD3DSurface::GetDesc(). 2011-03-11 11:40:31 +01:00
Henri Verbeet 756fdb7c5a wined3d: Merge the various resource desc structures. 2011-03-09 12:28:58 +01:00