Commit Graph

1503 Commits

Author SHA1 Message Date
Henri Verbeet f0b6873734 wined3d: Implement depth fills in the CPU blitter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:39 +01:00
Henri Verbeet cc65b90451 wined3d: Support uploading depth textures in surface_load_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:35 +01:00
Henri Verbeet 5895f77474 wined3d: Support downloading depth textures in surface_load_sysmem().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:33 +01:00
Józef Kucia 80b17bef3b wined3d: Fix return type for surface_load_texture().
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-23 20:12:56 +01:00
Henri Verbeet 34a123631d wined3d: Merge surface_convert_depth_to_float() into wined3d_format_convert_color_to_float().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 11:31:56 +01:00
Henri Verbeet 49a1b7b540 wined3d: Check for depth/stencil surfaces in individual surface location loaders.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 11:31:54 +01:00
Henri Verbeet a315899dbf wined3d: Return a failure if the location couldn't be loaded in surface_load_sysmem().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 11:31:52 +01:00
Henri Verbeet 8de7e5ccef wined3d: Return a BOOL from surface_load_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 11:31:50 +01:00
Henri Verbeet a7e5d4038c wined3d: Handle system memory copies in wined3d_texture_load_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-17 20:54:06 +01:00
Henri Verbeet 2641c5c28f wined3d: Pass a texture and sub-resource index to context_acquire().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-15 16:16:20 +01:00
Henri Verbeet 25188eb71f wined3d: Merge common code between texture3d_load_location() and surface_load_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-13 18:50:10 +01:00
Henri Verbeet 5a6efe6329 wined3d: Disallow upload conversion from compressed formats in surface_convert_format().
The underlying issue is that glCompressedTexSubImage2D() needs the upload
format to match the texture's internal format.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-08 17:02:53 +01:00
Henri Verbeet 807733f1c9 wined3d: Allow decompression blits on system memory resources in ffp_blit_supported().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-08 17:02:50 +01:00
Henri Verbeet 41738baea2 wined3d: Get rid of surface_modify_ds_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 16:56:00 +01:00
Henri Verbeet 35e651caf1 wined3d: Get rid of the "ds_current_size" field from struct wined3d_surface.
This should be unused now that surface_load_ds_location() is gone.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 16:55:57 +01:00
Henri Verbeet 1bd56b6ca5 wined3d: Get rid of surface_load_ds_location().
This should be unused now that "AlwaysOffscreen" is gone.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 11:25:46 +01:00
Józef Kucia a02fd72965 wined3d: Use depth/stencil formats for typeless resources only when WINED3DUSAGE_DEPTHSTENCIL is set.
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>
2016-12-12 19:40:33 +01:00
Józef Kucia 5ee3f54438 wined3d: Use single structure for view description.
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>
2016-12-06 15:02:34 +01:00
Józef Kucia 4beb9e5922 wined3d: Move surface_get_drawable_size() to view.c file.
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>
2016-11-07 16:59:45 +01:00
Matteo Bruni 4382f9235b wined3d: Store blit quad texture coordinates in a struct wined3d_vec3 array.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 14:28:23 +02:00
Józef Kucia 26a9c3a4e6 wined3d: Call GL functions through gl_info.gl_ops in ffp_blit_blit_surface().
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>
2016-10-10 21:10:49 +02:00
Henri Verbeet 09b09b307a wined3d: Use wined3d_format_calculate_pitch() in wined3d_surface_upload_data().
Mostly because wined3d_format_calculate_size() will need to handle
WINED3DFMT_FLAG_BROKEN_PITCH, but it also makes more sense conceptually.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-26 23:23:42 +09:00
Henri Verbeet 1402203759 wined3d: Use wined3d_texture_load_location() in wined3d_surface_blt().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-04 09:09:03 -05:00
Henri Verbeet bdfee1574e wined3d: Use wined3d_texture_load_location() in surface_load_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:17 -05:00
Henri Verbeet 1091de5c61 wined3d: Use wined3d_texture_load_location() in surface_load_drawable().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:17 -05:00
Henri Verbeet df099ca72b wined3d: Use wined3d_texture_load_location() in surface_load_sysmem().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:17 -05:00
Henri Verbeet 4119b907b5 wined3d: Use wined3d_texture_load_location() in surface_upload_from_surface().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:16 -05:00
Henri Verbeet 2437c77ebd wined3d: Use wined3d_texture_load_location() in surface_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 09:56:16 -05:00
Henri Verbeet 6c7eeeee32 wined3d: Use wined3d_texture_load_location() in surface_depth_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-02 06:09:05 -05:00
Michael Stefaniuc 0d001e3e1c wined3d: Use SetRect() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-01 09:57:45 -05:00
Henri Verbeet 8ae3a9b624 wined3d: Introduce a helper function to allocate arrays.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 16:19:01 +09:00
Henri Verbeet 3e29f952f9 wined3d: NP2 emulation is not allowed on array textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:06:44 +09:00
Józef Kucia 8e56632234 wined3d: Use d3d_perf channel for performance warnings.
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>
2016-05-18 19:38:55 +09:00
Stefan Dösinger 3a72716556 wined3d: Use wined3d_texture_prepare_location() in wined3d_texture_update_desc().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-18 01:06:16 +09:00
Michael Stefaniuc 128e6b5975 wined3d: Use IsRectEmpty() instead of open coding it.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-14 12:12:22 +09:00
Stefan Dösinger fdd9a4cb92 wined3d: Use wined3d_texture_prepare_location() in surface_load_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-27 12:40:57 +09:00
Stefan Dösinger bf8feb8b51 wined3d: Use wined3d_texture_prepare_location() in surface_load_sysmem().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-27 12:40:54 +09:00
Józef Kucia 64da6b0526 wined3d: Implement creating 2D array 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>
2016-04-26 21:35:36 +09:00
Józef Kucia 64014ae3ed wined3d: Add "layer_count" parameter to wined3d_texture_create().
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>
2016-04-26 21:35:31 +09:00
Stefan Dösinger 02a664c093 wined3d: Use wined3d_texture_prepare_location() in surface_load_ds_location().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-26 14:48:17 +09:00
Stefan Dösinger c22c9b401a wined3d: Use wined3d_texture_prepare_location() in surface_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 18:48:17 +09:00
Stefan Dösinger b6b7e2379e wined3d: Use wined3d_texture_prepare_location() in surface_depth_blt_fbo().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-25 18:48:17 +09:00
Józef Kucia b5dad41e36 wined3d: Implement readback from 2D array textures using glGet[Compressed]TexImage().
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>
2016-04-22 21:19:44 +09:00
Henri Verbeet 82044bc919 wined3d: Return a failure code if creating the staging texture failed in surface_cpu_blt().
Note that we return immediately. The textures aren't mapped yet here, so we
shouldn't try to unmap them.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 12:22:37 +09:00
Henri Verbeet 17768e567b wined3d: No longer make sub-resources full resources.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 12:22:33 +09:00
Henri Verbeet 58a1796d83 wined3d: Don't enumerate sub-resources in wined3d_device_reset().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 15:34:43 +09:00
Henri Verbeet 3b96ac290d wined3d: Allocate system memory for complete textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 14:09:39 +09:00
Henri Verbeet e6780a5e05 wined3d: Evict system memory for complete textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 14:09:39 +09:00
Henri Verbeet 2066e1a962 wined3d: Implement surface_modify_ds_location() on top of the regular resource location management.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 14:09:39 +09:00
Henri Verbeet a077c1f669 wined3d: Avoid wined3d_resource_get_desc() on a surface in surface_convert_format().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 14:09:39 +09:00