Commit Graph

145 Commits

Author SHA1 Message Date
Henri Verbeet afe401219c wined3d: Implement automatic mip-map generation for the Vulkan adapter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-12 18:08:35 +01:00
Henri Verbeet b28962ddb0 wined3d: Use wined3d_cs_finish() in wined3d_view_gl_destroy().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Zebediah Figura fc3919c4ab wined3d: Separate the "ops" member of struct wined3d_cs to a new wined3d_device_context structure.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-05 17:56:13 +01:00
Henri Verbeet 7ba0cc9085 wined3d: Add some TRACEs to command stream callbacks.
I.e., those used with wined3d_cs_init_object() and
wined3d_cs_destroy_object().

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-11 18:31:23 +01:00
Andrey Gusev c66e0e5723 wined3d: Add AMD Radeon RX 5500M.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Zebediah Figura 2d6462cdee wined3d: Make adapter_gl_clear_uav() static.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-25 23:31:19 +01:00
Henri Verbeet 8b3cc57df0 wined3d: Allocate a new bo for busy DISCARD maps.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 16:36:40 +01:00
Henri Verbeet a7c320d184 wined3d: Use command buffer IDs for synchronisation in wined3d_buffer_gl_sync_apple().
Analogous to the Vulkan adapter. This is slightly awkward in OpenGL
because it doesn't have explicit command buffers like Vulkan, but
calling wined3d_context_gl_submit_command_fence() on swapchain present
works well enough in practice. The main advantage of this approach is that it
avoids using a separate fence for each usage of each bo.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 21:36:12 +01:00
Matteo Bruni 0638d50b22 wined3d: Introduce wined3d_context_gl_destroy_bo().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-11-30 21:35:58 +01:00
Zhiyi Zhang 9288f31015 dxgi: Update swapchain containing output after Alt+Enter was used to exit fullscreen.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 16:21:33 +02:00
Matteo Bruni adf73f7371 wined3d: Fail adapter creation if driver version info can't be found.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 22:30:48 +02:00
Matteo Bruni 905a52b3b6 wined3d: Automatically assign reported driver D3D version / feature level.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-14 22:31:19 +02:00
Zhiyi Zhang 122a28a313 wined3d: Use valid adapter LUIDs if they are available.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-08 16:06:06 +02:00
Henri Verbeet a4cedbe86d wined3d: Get rid of WINED3D_QUIRK_SET_TEXCOORD_W.
This quirk only affects fixed-function fragment processing, which hasn't
been a supported configuration on the affected hardware for a while now.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-17 00:05:44 +02:00
Henri Verbeet 35b2326265 wined3d: Set "device->d3d_initialized" in wined3d_device_set_implicit_swapchain().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:14:54 +02:00
Henri Verbeet 7379451a06 wined3d: Add a supported extensions array to the wined3d_vk_info structure.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:19 +02:00
Chip Davis 160cb956f8 wined3d: Have ARB_fbo imply EXT_packed_depth_stencil.
The enums are the same between the two extensions. The 24-8 packed
depth/stencil format is the only thing provided by the latter.

Remove some redundant code.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Henri Verbeet 95b66030bb wined3d: Make the adapter responsible for draws.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-28 11:17:48 +02:00
Henri Verbeet e46b69475b wined3d: Make the adapter responsible for compute dispatch.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-28 11:17:40 +02:00
Henri Verbeet 599a299288 wined3d: Add a miscellaneous state template for the Vulkan adapter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 09:12:15 +02:00
Henri Verbeet d1bc6843ba wined3d: Drop the bind flag parameters to wined3d_adapter_ops.adapter_copy_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-23 09:12:12 +02:00
Henri Verbeet 32d17f1e9a wined3d: Drop the "bind_flags" parameter to wined3d_adapter_ops.adapter_map_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 16:47:41 +02:00
Henri Verbeet cef12f97d6 wined3d: Drop the "bind_flags" parameter to wined3d_adapter_ops.adapter_unmap_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 16:47:41 +02:00
Henri Verbeet b29ea85885 wined3d: Use the bo binding in wined3d_context_gl_unmap_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 16:47:41 +02:00
Henri Verbeet 7d43577d89 wined3d: Use the bo binding in wined3d_context_gl_map_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 16:47:41 +02:00
Henri Verbeet 97272f58ce wined3d: Use the bo bindings in wined3d_context_gl_copy_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 22:54:26 +02:00
Henri Verbeet 77fe33f5d9 wined3d: Introduce a structure for OpenGL buffer objects.
Analogous to the wined3d_bo_vk structure for Vulkan.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 22:54:26 +02:00
Chip Davis 2929a3a056 wined3d: Use GL_APPLE_flush_render and GL_APPLE_rgb_422 to detect Apple OpenGL.
In addition to the existing GL_APPLE_ycbcr_422. Core contexts on Mac OS don't
advertise GL_APPLE_fence or GL_APPLE_ycbcr_422... but they do have
GL_APPLE_flush_render and GL_APPLE_rgb_422. So, go back to using
GL_APPLE_flush_render in our OS X detection, and accept GL_APPLE_rgb_422 in
addition to GL_APPLE_ycbcr_422.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-10 19:09:37 +02:00
Matteo Bruni a281544bde wined3d: Fix ARB_TEXTURE_STORAGE_MULTISAMPLE core_extension[] entry.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:34:50 +01:00
Lukáš Horáček 0804914bb7 wined3d: Add GTX 1660 SUPER as a card.
Signed-off-by: Lukáš Horáček <flgx16@gmail.com>
Signed-off-by: Torge Matthies <openglfreak@googlemail.com>
Signed-off-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:34:50 +01:00
Matteo Bruni ef66c4488f wined3d: Get rid of MAX_RENDER_TARGET_VIEWS.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 20:43:10 +01:00
Zebediah Figura 63a06295c6 wined3d: Feature level 10.0 does not require independent blend functions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-16 21:30:29 +01:00
Zebediah Figura 8133de6479 wined3d: Map ARB_draw_buffers_blend functions.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-16 21:30:27 +01:00
Zebediah Figura 2da5422bd2 wined3d: Implement independent blend.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-13 13:23:11 +01:00
Paul Gofman 5b6c85d64a wined3d: Use EXT_framebuffer_multisample_blit_scaled for scaled resolves.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-12 21:18:18 +01:00
Matteo Bruni 8d87bce071 wined3d: Rename struct wined3d_map_range to struct wined3d_range.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-27 23:34:51 +01:00
Brendan Shanks 32712b4bd7 wined3d: Add GPU information for NVIDIA GeForce GTX 1060 3GB.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 20:14:12 +01:00
Zhiyi Zhang c8aad3407c wined3d: Add GPU information for NVIDIA GeForce GTX 1650 SUPER.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 21:40:22 +01:00
Sven Baars 4128e457a9 wined3d: Avoid accessing freed memory in wined3d_view_gl_destroy() (Valgrind).
Signed-off-by: Sven Baars <sbaars@codeweavers.com>
Signed-off-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-06 21:40:22 +01:00
Henri Verbeet 5d4d5c593d wined3d: Pass a pointer to the counter buffer to wined3d_view_gl_destroy().
If adapter_gl_destroy_unordered_access_view() is called before
wined3d_unordered_access_view_gl_cs_init() has finished executing, the
"counter_bo" field may still be 0. More generally, we shouldn't access
the "counter_bo" field from outside the CS thread.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:17:05 +01:00
Henri Verbeet ca0c3f770a wined3d: Unload texture resources through texture ops.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:24 +01:00
Henri Verbeet 3bc8bde91b wined3d: Unload buffer resources through buffer ops.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:24 +01:00
Henri Verbeet b941665b42 wined3d: Destroy PBOs in wined3d_texture_gl_destroy_object().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 21:27:14 +01:00
Andrew Sheldon da5a80879f wined3d: Add Navi 10 PCI id and device description.
Signed-off-by: Andrew Sheldon <asheldon55@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-11 20:01:40 +01:00
Matteo Bruni dee191390c wined3d: Limit GLSL version to 1.30 when OpenGL 3 is not supported.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 17:35:14 +01:00
Paul Gofman a5551040f2 wined3d: Issue texture barrier before using a texture attached to FBO.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45978
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:12:41 +01:00
Henri Verbeet 422fa49668 wined3d: Make the adapter responsible for copying between buffer objects.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 17:32:11 +02:00
Henri Verbeet f2c668e779 wined3d: Make the adapter responsible for clearing UAVs.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-24 17:32:08 +02:00
Henri Verbeet 179c8cc86f wined3d: Move the "buffer_object" field from struct wined3d_buffer_gl to struct wined3d_buffer.
We'll want to use this for Vulkan buffers as well.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Henri Verbeet c2f0ae50b4 wined3d: Use explicit flushing in wined3d_context_gl_unmap_bo_address().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00