Commit Graph

555 Commits

Author SHA1 Message Date
Henri Verbeet 5fcffb10f7 wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_bind().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:11:35 +02:00
Henri Verbeet 6811cc6414 wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_apply_sampler_desc().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:11:33 +02:00
Henri Verbeet ed9a6a2d67 wined3d: Pass a wined3d_context_gl structure to wined3d_texture_prepare_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:11:30 +02:00
Henri Verbeet e3d28cd45d wined3d: Pass a wined3d_context_gl structure to context_unmap_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-12 16:11:28 +02:00
Henri Verbeet fd29561e97 wined3d: Pass a wined3d_context_gl structure to context_map_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-11 09:46:13 +02:00
Henri Verbeet c7badafb9c wined3d: Upload texture data through the texture ops in wined3d_cs_exec_blt_sub_resource().
Since we want to avoid directly calling GL-specific code here.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:16:56 +02:00
Henri Verbeet 6937b98700 wined3d: Make the adapter responsible for acquiring and releasing contexts.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-05 16:44:45 +02:00
Henri Verbeet 52c5abb3d7 wined3d: Move the "active_texture" field from struct wined3d_context to struct wined3d_context_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-05 16:44:41 +02:00
Henri Verbeet 2b350f9d52 wined3d: Use wined3d_texture_get_level_box() in wined3d_texture_create().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-21 18:08:37 +02:00
Henri Verbeet fc7ea69e80 wined3d: Pass a wined3d_context_gl structure to context_texture_update().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 19:26:28 +02:00
Henri Verbeet 3171193bcf wined3d: Move the texture unit map from struct wined3d_context to struct wined3d_context_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-13 12:45:08 +02:00
Henri Verbeet 77bc74c637 wined3d: Pass a wined3d_context_gl structure to wined3d_texture_gl_bind_and_dirtify().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-09 10:01:53 -05:00
Henri Verbeet 6de1837955 wined3d: Pass a wined3d_context_gl structure to context_bind_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-07 08:46:07 -05:00
Józef Kucia 446a2422a9 wined3d: Store texture swizzle capability in struct wined3d_d3d_info.
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>
2019-05-07 08:45:43 -05:00
Stefan Dösinger 9e20eda421 wined3d: Adjust video memory when resizing swapchain buffers.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-25 15:56:28 +01:00
Józef Kucia e4bf926c3b wined3d: Introduce general helper function to get sample count for resource.
For Vulkan backend.

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>
2019-03-04 19:34:46 +01:00
Józef Kucia 57110d5bc2 wined3d: Introduce wined3d_cs_finish() helper.
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>
2018-11-29 17:48:34 +01:00
Henri Verbeet 74931f9217 wined3d: Do not set WINED3D_TEXTURE_CREATE_MAPPABLE on the cursor texture.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-26 20:24:54 +01:00
Henri Verbeet 0bae2bed43 wined3d: Require exclusive GPU access for rendertarget and depth/stencil resources.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Henri Verbeet 826be9ee10 wined3d: Make "driver private" formats always mappable.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-19 22:42:41 +01:00
Józef Kucia a586d4e880 wined3d: Fix downloading data for 1D array textures.
glGetTexImage() downloads data for all layers.

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>
2018-11-16 18:41:14 +01:00
Henri Verbeet 220c078ed9 wined3d: Prefer bind flags over usage flags in wined3d_texture_prepare_texture().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-01 09:16:59 +01:00
Henri Verbeet 6435bd743b wined3d: Prefer bind flags over usage flags in wined3d_texture_upload_data().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-01 09:16:57 +01:00
Henri Verbeet 14434751dd wined3d: Prefer bind flags over usage flags in wined3d_texture_init().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-01 09:16:54 +01:00
Henri Verbeet 7d83ebeed2 wined3d: Pass bind flags to wined3d_get_format().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:17:36 +01:00
Henri Verbeet 7cba915710 wined3d: Pass correct bind flags to texture creation functions.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-31 16:17:36 +01:00
Henri Verbeet 45bf95278d wined3d: Store resource bind flags in the wined3d_resource structure.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:54:06 +01:00
Henri Verbeet f8ba91ac75 wined3d: Validate required OpenGL extensions in wined3d_texture_gl_init() instead of wined3d_texture_init().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:54:02 +01:00
Henri Verbeet 961a94ac04 wined3d: Move the "target" field from struct wined3d_texture to struct wined3d_texture_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:53:59 +01:00
Henri Verbeet 5f9740762a wined3d: Move the OpenGL textures from struct wined3d_texture to struct wined3d_texture_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-30 10:53:55 +01:00
Henri Verbeet e12d97e50d wined3d: Move the multisample renderbuffers from struct wined3d_texture to struct wined3d_texture_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-29 10:11:42 +01:00
Henri Verbeet 0649adc31f wined3d: Move the depth renderbuffers from struct wined3d_texture to struct wined3d_texture_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-29 10:11:40 +01:00
Henri Verbeet 81f577e119 wined3d: Introduce a separate structure for OpenGL texture information.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-29 10:11:39 +01:00
Henri Verbeet c390f41558 wined3d: Introduce debug helpers for wined3d_bo_address structures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-23 13:55:29 +02:00
Henri Verbeet 718f7fd4fd wined3d: Validate the initial texture data before initialising the texture.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-23 13:55:27 +02:00
Andrew Wesie b3b91ea51d wined3d: Implement D3D11_STANDARD_MULTISAMPLE_PATTERN.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45197
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-22 22:36:43 +02:00
Józef Kucia 94f499335a wined3d: Call wined3d_cs_emit_update_sub_resource() directly in wined3d_texture_create().
Fixes a regression introduced by commit
490c6d548a.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45996
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>
2018-10-18 19:48:21 +02:00
Józef Kucia ecea7a94c9 wined3d: Set texture swizzle for texture views.
Fixes A8_UNORM views.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-10 21:08:48 +02:00
Andrew Wesie 54a9e84952 wined3d: Add fast-path for texture download blit.
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-04 09:10:20 -05:00
Andrew Wesie 843ccd2d5b wined3d: Unify the texture download functions.
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-03 16:25:33 -05:00
Andrew Wesie b86716ebed wined3d: Use PBO for read-only staging textures.
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-02 19:37:56 -07:00
Henri Verbeet a6d640e866 wined3d: Do not create DCs for all textures on WINED3D_NO3D adapters.
WINED3DFMT_D16_UNORM for example doesn't have a corresponding ddi_format.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:02 +02:00
Henri Verbeet a470045506 wined3d: Move "texture_size" from struct wined3d_gl_limits to struct wined3d_d3d_limits.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-26 16:50:43 +02:00
Henri Verbeet 1606dd39e2 wined3d: Move the OpenGL texture format to struct wined3d_format_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-24 10:24:31 +02:00
Henri Verbeet 07dad9b150 wined3d: Store the NPOT texture capabilities in struct wined3d_d3d_info.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-18 12:29:25 +02:00
Józef Kucia 5080d3c1c1 wined3d: Move formats from gl_info to wined3d_adapter.
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>
2018-08-30 20:27:09 +02:00
Józef Kucia dfdecfc2eb wined3d: Pass context to wined3d_texture_set_compatible_renderbuffer().
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>
2018-08-27 17:34:43 +02:00
Józef Kucia 9320424105 wined3d: Pass wined3d_adapter to wined3d_get_format().
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>
2018-08-23 20:12:29 +02:00
Józef Kucia db6f95880c wined3d: Reject cross-device blits.
DirectDraw tests show that cross-device blits are supposed to work for
limited cases between system memory surfaces. However, cross-device
blits are unsafe in wined3d, especially with CSMT enabled.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45382
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>
2018-08-14 10:16:01 +02:00
Connor McAdams 3d4001f4fc wined3d: Decompress DXTn 3D textures on upload.
Signed-off-by: Connor McAdams <conmanx360@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 10:16:00 +02:00