Zebediah Figura
db04f62707
wined3d: Introduce wined3d_device_context_set_stream_source().
...
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-24 20:48:21 +01:00
Zebediah Figura
b41850979f
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_stream_source().
...
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-24 20:48:21 +01:00
Jan Sikorski
16a62fcd87
wined3d: Introduce struct wined3d_image_vk and its create/destroy helpers.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-23 20:53:31 +01:00
Jan Sikorski
7eec755bce
wined3d: Rename create/destroy helpers dealing with Vulkan objects.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-23 20:53:28 +01:00
Zebediah Figura
8f32fbee9b
wined3d: Introduce wined3d_device_context_set_predication().
...
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-22 20:38:45 +01:00
Zebediah Figura
874ff93c04
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_predication().
...
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-22 20:38:45 +01:00
Zebediah Figura
0acd15dec8
wined3d: Introduce wined3d_device_context_set_depth_stencil_view().
...
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-22 20:38:45 +01:00
Zebediah Figura
4a5d320609
wined3d: Pass a wined3d_device_context to wined3d_device_context_emit_set_depth_stencil_view().
...
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-22 20:38:45 +01:00
Zebediah Figura
507bd1ae16
wined3d: Introduce wined3d_device_context_set_rendertarget_view().
...
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-18 22:04:01 +01:00
Zebediah Figura
cdb8fff359
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_rendertarget_view().
...
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-18 22:04:01 +01:00
Zebediah Figura
beab8a643e
wined3d: Introduce wined3d_device_context_set_unordered_access_view().
...
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-18 22:04:01 +01:00
Zebediah Figura
77d6549f55
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_unordered_access_view().
...
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-18 22:04:01 +01:00
Zebediah Figura
854b925d31
wined3d: Check whether a register is a UAV before recording UAV reads.
...
"Discovery Tour by Assassin's Creed: Ancient Egypt" uses atomic RMW instructions
with TGSM.
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-18 22:04:01 +01:00
Matteo Bruni
2683c34c90
wined3d: Advertise multisampling only when 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>
2021-03-18 22:04:01 +01:00
Matteo Bruni
cb45e91b24
wined3d: Handle blits to Vulkan swapchains not matching the D3D swapchain.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50119
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-18 22:04:01 +01:00
Zebediah Figura
9a1d82a3c0
wined3d: Introduce wined3d_device_context_set_sampler().
...
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-17 15:34:12 +01:00
Zebediah Figura
57770a47d5
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_sampler().
...
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-17 15:34:08 +01:00
Zebediah Figura
ee788e3e08
wined3d: Introduce wined3d_device_context_set_shader_resource_view().
...
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-17 15:34:02 +01:00
Zebediah Figura
e2c96d3453
wined3d: Pass a wined3d_device_context to wind3d_cs_emit_set_shader_resource_view().
...
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-17 15:33:57 +01:00
Henri Verbeet
6580892660
wined3d: Take the layer index into account in wined3d_shader_resource_view_gl_generate_mipmap().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 20:36:43 +01:00
Henri Verbeet
8c47318081
wined3d: Add a missing barrier to wined3d_shader_resource_view_vk_generate_mipmap().
...
Specifically, the one for using the new destination as blit target.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-16 20:36:43 +01:00
Zebediah Figura
1ec6695650
wined3d: Introduce wined3d_device_context_set_scissor_rects().
...
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-16 20:36:43 +01:00
Zebediah Figura
e00ce29a5e
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_scissor_rects().
...
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-16 20:36:43 +01:00
Zebediah Figura
da7a9bd811
wined3d: Introduce wined3d_device_context_set_viewports().
...
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-16 20:36:43 +01:00
Zebediah Figura
911ed1caf1
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_viewports().
...
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-16 20:36:43 +01:00
Henri Verbeet
4cfac484db
wined3d: Move feature level selection to wined3d_state_create().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 20:36:44 +01:00
Henri Verbeet
53fdee6108
wined3d: Store the feature level in the wined3d_state structure.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 20:36:38 +01:00
Henri Verbeet
7dadbc586e
wined3d: Introduce wined3d_state_reset().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-15 20:36:33 +01:00
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
521cafcfff
wined3d: Pass a resource range to wined3d_context_vk_image_barrier().
...
In particular, this allows different sub-resources of the same texture to have
different image layouts, as required when doing blits between them.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Henri Verbeet
877cd01bf9
wined3d: End active queries before restarting them in wined3d_query_vk_issue().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Henri Verbeet
035dc48388
wined3d: Request VK_KHR_external_memory on Vulkan 1.0.
...
For VkPhysicalDeviceIDProperties. Found by the validation layers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Henri Verbeet
f969570c22
wined3d: Set the "compareEnable" field of struct VkSamplerCreateInfo to either 0 or 1.
...
VkBool32 is (unfortunately) specified as 0/1, instead of zero/non-zero. Found
by the validation layers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Henri Verbeet
98137faeb2
wined3d: Use wined3d_cs_finish() in wined3d_view_vk_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
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
7494294d6f
wined3d: Introduce wined3d_device_context_set_rasterizer_state().
...
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-11 21:52:17 +01:00
Zebediah Figura
a5916c05d4
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_rasterizer_state().
...
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-11 21:52:17 +01:00
Zebediah Figura
41f521b59b
wined3d: Introduce wined3d_device_context_set_depth_stencil_state().
...
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-11 21:52:17 +01:00
Zebediah Figura
a3102c7b39
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_depth_stencil_state().
...
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-11 21:52:17 +01:00
Matteo Bruni
86a06f7e97
wined3d: Remove dead statement.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Matteo Bruni
e4bc4df09f
wined3d: Use VK_FORMAT_D24_UNORM_S8_UINT when available.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50123
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-11 21:52:17 +01:00
Jan Sikorski
b8a5f8098b
wined3d: Check slice pitch against its size in wined3d_format_copy_data().
...
If they don't match and there's more than one slice to copy, we can't use
a single memcpy.
Fixes blinking objects in Hellblade: Senua's Sacrifice.
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
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
cd17163265
wined3d: Introduce wined3d_device_context_set_blend_state().
...
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-10 18:43:40 +01:00
Zebediah Figura
906568e093
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_blend_state().
...
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-10 18:43:37 +01:00
Zebediah Figura
01bcca6370
wined3d: Introduce wined3d_device_context_set_constant_buffer().
...
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-10 18:43:32 +01:00
Zebediah Figura
8f1092a6ee
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_constant_buffer().
...
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-09 12:00:52 +01:00
Zebediah Figura
3920277c22
wined3d: Introduce wined3d_device_get_immediate_context().
...
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-09 12:00:49 +01:00
Matteo Bruni
b67e9ddbb3
wined3d: Disable WINED3DFMT_NULL on backbuffer ORM.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:25 +01:00
Matteo Bruni
d06cdcd646
wined3d: Disable WINED3DFMT_D16_LOCKABLE on backbuffer ORM.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:23 +01:00
Matteo Bruni
65b3279bae
wined3d: Correctly handle modifiers on instructions with multiple destination registers.
...
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:20 +01:00
Zebediah Figura
eda716682b
wined3d: Introduce wined3d_device_context_set_shader().
...
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:27 +01:00
Zebediah Figura
f1842d5ba4
wined3d: Pass a wined3d_device_context to wined3d_cs_emit_set_shader().
...
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:24 +01:00
Zebediah Figura
94607a1598
wined3d: Move the "state" field from struct wined3d_device to struct wined3d_device_context.
...
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:22 +01:00
Zebediah Figura
55a0507ee8
wined3d: Move the "device" member of struct wined3d_cs to struct wined3d_device_context.
...
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:20 +01:00
Zebediah Figura
d3aebfed92
wined3d: Pass a wined3d_device_context to wined3d_cs_require_space().
...
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:17 +01:00
Zebediah Figura
864a9f3e32
wined3d: Pass a wined3d_device_context to wined3d_cs_submit().
...
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:15 +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
f870cf9282
wined3d: Load/invalidate entire views in ffp_blitter_clear_rendertargets().
...
In particular, clearing a multi-layer view affects all layers, not just the
first.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 08:54:31 +01:00
Henri Verbeet
25e07835a2
wined3d: Allow layered clears.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-25 08:54:28 +01:00
Rémi Bernon
80e1eb87ad
wined3d: Introduce public API to set a wined3d_state object on a device.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-23 22:30:31 +01:00
Henri Verbeet
57119a1c1f
wined3d: Unbind framebuffer state in state_unbind_resources().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-23 22:30:31 +01:00
Rémi Bernon
50949c953a
wined3d: Use a separate allocation for the device state.
...
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-23 22:30:31 +01:00
Henri Verbeet
2ff9a8f08a
wined3d: Do not fail swapchain creation in wined3d_swapchain_vk_init() if a Vulkan swapchain could not be created.
...
While far from ideal, we can still use swapchain_blit_gdi() to get
back-buffers to the screen.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-22 09:10:18 +01:00
Henri Verbeet
70418f69dd
wined3d: Introduce a backup path for swapchain presents using GDI.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-22 09:10:16 +01:00
Henri Verbeet
b8719736c5
wined3d: Recognise the read-only depth/stencil view flags in wined3d_debug_view_desc().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-18 22:39:34 +01:00
Zebediah Figura
da9726a16c
wined3d: Support WINED3D_RTYPE_BUFFER in wined3d_check_device_format().
...
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-02-12 16:10:46 +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
Henri Verbeet
b9a440d15d
wined3d: Create the backbuffer rendertarget view only after calling adapter_init_3d().
...
Otherwise we may not be able to acquire a context to create the view. In
practice, this is only an issue for d3d9 and earlier in combination with the
Vulkan backend.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-11 18:31:20 +01:00
Henri Verbeet
fb9ec02e06
wined3d: Construct a separate source box in wined3d_device_copy_resource().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 09:14:52 +01:00
Henri Verbeet
1039bf036f
wined3d: Compare resource sizes in blocks in wined3d_device_copy_resource().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 09:14:50 +01:00
Henri Verbeet
6aa9eec60f
wined3d: Use the format block dimensions to construct the destination box for sub-resource region copies.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 09:14:47 +01:00
Henri Verbeet
02385a4042
wined3d: Allow resource copies between block-compatible formats.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-10 09:14:43 +01:00
Jan Sikorski
6b7f02026c
wined3d: Return E_INVALIDARG from vertexdeclaration_init() on validation failure.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:10:15 +01:00
Jan Sikorski
81dfece45c
wined3d: Align vertex attribute offsets to their size, if smaller than 4.
...
This should not change behaviour for d3d9 and earlier, where all formats
have sizes that are multiples of 4.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43422
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-08 20:10:12 +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
Henri Verbeet
08dc5b92e0
wined3d: Invalidate STATE_STENCIL_REF when switching between NULL and non-NULL depth/stencil views.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-05 22:53:46 +01:00
Jan Sikorski
3655e7d945
wined3d: Added missing states to debug_d3dstate().
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:01:32 +01:00
Jan Sikorski
433aaccc1f
wined3d: Check for stencil reference change in vulkan backend.
...
Make stencil reference value dynamic, so it can be updated separately.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50380
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:01:29 +01:00
Jan Sikorski
f3aceef725
wined3d: Store stencil reference value in wined3d_state.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 21:01:26 +01:00
Zebediah Figura
387a63237d
wined3d: Implement global resource memory barriers.
...
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-29 20:53:32 +01:00
Zhiyi Zhang
98f490bdfc
wined3d: Support multiple outputs.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-26 17:53:54 +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
53916000f8
wined3d: Trace the available Vulkan extensions.
...
Like we do for OpenGL.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-25 23:31:03 +01:00
Henri Verbeet
50a90dcb32
wined3d: Implement NULL constant buffer views for the Vulkan backend.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-22 18:33:32 +01:00
Henri Verbeet
ff19c3e6fa
wined3d: Require VK_KHR_sampler_mirror_clamp_to_edge for WINED3D_TADDRESS_MIRROR_ONCE.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-22 18:33:32 +01:00
Henri Verbeet
f0dae1d852
wined3d: Correct the argument order of a FIXME in wined3d_texture_vk_download_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Henri Verbeet
c47b28f5d4
wined3d: Stencil test also uses the depth/stencil buffer.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Henri Verbeet
a3f829bbb8
wined3d: Always include any depth/stencil attachment in the Vulkan framebuffer.
...
Analogous to the GL backend. The alternative would be to potentially
invalidate STATE_FRAMEBUFFER when changing the depth/stencil state object,
which doesn't seem worth it.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Henri Verbeet
c75bbc5c22
wined3d: End the current render pass in wined3d_buffer_vk_barrier().
...
As we do for image barriers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Henri Verbeet
e796da7a5e
wined3d: Properly convert Vulkan sample count format information.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-21 20:46:13 +01:00
Zebediah Figura
6bdf641142
wined3d: Use YieldProcessor().
...
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-21 20:46:10 +01:00
Henri Verbeet
82a9e80063
wined3d: Add some barriers between resource usage on different bind points.
...
A typical case would be between using a texture as render target and using it
as a shader resource.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 21:44:17 +01:00
Henri Verbeet
e2e776462d
wined3d: Introduce wined3d_context_vk_reference_resource().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 21:44:17 +01:00
Henri Verbeet
92dacb1d68
wined3d: Get rid of the "UseGLSL" setting.
...
This was deprecated in Wine 5.0, use the "shader_backend" setting instead.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 21:44:17 +01:00
Henri Verbeet
7a54209d4b
wined3d: Implement the "precise" flag in the GLSL shader backend.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 21:44:17 +01:00
Henri Verbeet
fc50ea2351
wined3d: Also trace memory types in adapter_vk_init_driver_info().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet
1efa4ec7fa
wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_sprintf_cast().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet
8ef6484deb
wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_append_dst_ext().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet
d54576c89b
wined3d: Cleanup the staging bo on an error path in wined3d_texture_vk_upload_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet
0d2b730f9e
wined3d: Get rid of the destination offset in wined3d_texture_vk_upload_data().
...
The idea was once to use permanent bo's for textures, similar to how texture
PBOs work in the OpenGL backend. In that case we would have needed to copy to
the correct position in the bo, in order not to modify other parts of the bo.
With the current scheme, the destination offset serves no purpose.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet
3cc8147594
wined3d: Use glFinish() for synchronisation when cleaning up a destroyed context in wined3d_context_gl_cleanup().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50485
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-15 10:09:57 +01:00
Zebediah Figura
9cbe273558
wined3d: Use debug_d3dusage() for both usage and usage query flags.
...
Avoid spurious FIXME messages in wined3d_check_device_format().
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-04 17:12:45 +01:00
Henri Verbeet
afac4f09c7
wined3d: Do not create Vulkan 2D (array) views for UAVs on 3D resources.
...
We should simply create 3D views.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50123
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-16 16:22:36 +01:00
Henri Verbeet
619c87bb59
wined3d: Avoid referencing empty command buffers in wined3d_query_event_vk_issue().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-15 22:09:21 +01:00
Henri Verbeet
353e84015b
wined3d: Zero-initialise context_vk in wined3d_context_vk_init().
...
wined3d_context_vk_init() assumes zero-initialised memory, but that's not
necessarily true in case we previously went through an
adapter_vk_init_3d()/adapter_vk_uninit_3d() pair.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-15 22:09:21 +01:00
Rafał Harabień
e6c777d26d
d3d9: Fix handling of D3DENUM_WHQL_LEVEL.
...
D3DENUM_NO_WHQL_LEVEL from Direct3D 8 was replaced with D3DENUM_WHQL_LEVEL in
Direct3D 9.
Signed-off-by: Rafał Harabień <rafalh92@outlook.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 16:21:49 +01:00
Henri Verbeet
85152f3a50
wined3d: The Vulkan blitter supports depth blits.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50123
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 16:21:47 +01:00
Henri Verbeet
b4e109f2f5
wined3d: Unmap the slab if needed in wined3d_context_vk_destroy_bo().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 16:21:45 +01:00
Henri Verbeet
9992d710e4
wined3d: Unmap the chunk if needed in wined3d_context_vk_destroy_bo().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 16:21:42 +01:00
Henri Verbeet
4e7be88990
wined3d: Only clear "map_ptr" if the memory was unmapped in wined3d_allocator_chunk_vk_unmap().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 16:21:40 +01:00
Henri Verbeet
46c7f66cf3
wined3d: Compare requested memory types in wined3d_bo_slab_vk_compare().
...
Instead of comparing the requested memory type against what we actually got.
For example, we may have gotten coherent memory without having explicitly
requested it, in which case wined3d_context_vk_create_slab_bo() would fail to
find an existing slab to allocate from.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-14 16:21:37 +01:00
Henri Verbeet
675adf0163
wined3d: Do not request VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT for unmappable buffers.
...
In particular, some implementations may not support the combination of
VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT and VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
for all buffer types, or at all.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-10 16:26:39 +01:00
Henri Verbeet
ff0aa5a8da
wined3d: Request VK_MEMORY_PROPERTY_HOST_CACHED_BIT for WINED3D_RESOURCE_ACCESS_MAP_R buffers.
...
Unsurprisingly, reading for uncached memory may be very slow.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-10 16:26:36 +01:00
Henri Verbeet
ddd55cadb8
wined3d: Do not request VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT for dynamic buffers.
...
We don't typically need these to be in VRAM, and VRAM may not be mappable.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-10 16:26:32 +01:00
Henri Verbeet
6f55c8d1c5
wined3d: Use an sRGB fallback format for sRGB formats in wined3d_swapchain_vk_select_vk_format().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50121
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-09 16:29:28 +01:00
Henri Verbeet
97558b6550
wined3d: Ensure the last mip-level is at least large enough to hold a single compressed block.
...
This fixes a regression exposed by commit
ca0c3f770a
, but probably originally introduced
by commit 3f7e5d647e
.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48362
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-09 16:29:24 +01:00
Matteo Bruni
d989d449c3
wined3d: Allow forcing commands serialization in the CS thread.
...
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-12-04 18:39:48 +01:00
Matteo Bruni
5031b9a994
wined3d: Rename d3d_synchronous debug channel to d3d_sync.
...
The old name exceeded the maximum size of 14 characters.
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-12-04 18:39:44 +01:00
Henri Verbeet
b2748a99fd
wined3d: Handle GL_APPLE_flush_buffer_range flushing in wined3d_context_gl_unmap_bo_address().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 16:36:45 +01:00
Henri Verbeet
1044bc4a05
wined3d: Get rid of redundant DISCARD filtering.
...
Now that we handle DISCARD maps ourselves, this happens implicitly.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 16:36:43 +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
4c5581c2eb
wined3d: Use the "bo user" mechanism to invalidate existing bindings in wined3d_buffer_gl_destroy_buffer_object().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-04 16:36:36 +01:00
Henri Verbeet
d52a75a795
wined3d: Explicitly synchronise in wined3d_context_gl_map_bo_address().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 20:18:39 +01:00
Henri Verbeet
5333cd0612
wined3d: Reference the bo in wined3d_buffer_gl_upload_ranges().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 20:18:39 +01:00
Henri Verbeet
736ac3eaf9
wined3d: Reference the bo in wined3d_texture_gl_download_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 20:18:39 +01:00
Henri Verbeet
6f8c918d86
wined3d: Reference the bo in wined3d_texture_gl_download_data_slow_path().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 20:18:39 +01:00
Henri Verbeet
17e51124f9
wined3d: Reference the bo in wined3d_texture_gl_upload_data().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-03 20:18:39 +01:00
Andrey Gusev
c1c129f3b8
wined3d: Add NVIDIA GeForce GTX 1060 Mobile.
...
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>
2020-12-03 20:18:38 +01:00
Henri Verbeet
42f90354ba
wined3d: Reference the source/destination bo in wined3d_texture_copy_sysmem_location().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Henri Verbeet
c123ff8881
wined3d: Reference the bo (if any) in texture2d_read_from_framebuffer().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Henri Verbeet
5a9c2f2de1
wined3d: Reference the constant buffer bo in context_gl_load_shader_resources().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Henri Verbeet
e29877ee42
wined3d: Reference the SRV bo in context_load_shader_resources().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Henri Verbeet
a0abc66566
wined3d: Reference the UAV bo in context_load_unordered_access_resources().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-02 19:08:04 +01:00
Matteo Bruni
4adfe31003
wined3d: Get rid of an unnecessary assignment.
...
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-12-02 19:08:04 +01:00
Henri Verbeet
56f1ce6be6
wined3d: Reference the stream output bo in context_load_stream_output_buffers().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:52:11 +01:00
Henri Verbeet
587174be8b
wined3d: Reference the indirect buffer bo in dispatch_compute().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:52:11 +01:00
Henri Verbeet
a381f0cae8
wined3d: Reference the indirect buffer bo in wined3d_context_gl_draw_indirect().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:52:11 +01:00
Henri Verbeet
14ed6b1ce3
wined3d: Reference the bo in wined3d_unordered_access_view_gl_clear_uint().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:52:11 +01:00
Henri Verbeet
20c828bdc5
wined3d: Reference the source/destination bo in wined3d_context_gl_copy_bo_address().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 19:52:11 +01:00
Alexandre Julliard
2bc3c8463d
libport: Remove the isfinite/isinf/isnan function replacements.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 10:43:01 +01:00
Alexandre Julliard
db7c934f8e
libport: Remove the strnlen() function replacement.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-01 10:19:50 +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
77f0149a6c
wined3d: Use GL_ARB_buffer_storage if available.
...
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:36:10 +01:00
Matteo Bruni
90f33067da
wined3d: Introduce wined3d_context_gl_create_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:36:05 +01:00
Henri Verbeet
db42859977
wined3d: Store the usage in struct wined3d_bo_gl.
...
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:01 +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
Matteo Bruni
22c6334656
wined3d: Add a trace to wined3d_context_gl_bind_fbo().
...
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-26 23:25:24 +01:00
Matteo Bruni
881e0a4310
wined3d: Use glClearDepthf() when available.
...
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-26 23:25:24 +01:00
Matteo Bruni
7b23056c0b
wined3d: Ignore WINED3DFMT_NULL rendertarget in D/S size checks.
...
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-26 23:25:24 +01:00
Zhiyi Zhang
d8c9671d4d
wined3d: Do not use wined3d_output_get_desc() to retrieve display rotation.
...
Most of the time when wined3d_output_get_desc() is called, display rotation is not needed.
Retrieving display rotation is quite expensive because it needs to query information from XRandR.
So use wined3d_output_get_display_mode() to retrieve display rotation when needed.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50096
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-11-23 21:05:05 +01:00
Zhiyi Zhang
b911e56045
wined3d: Restore display modes for all outputs when doing mode restoration.
...
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-11-03 21:47:27 +01:00
Zhiyi Zhang
c9e2deac39
wined3d: Store a struct wined3d pointer in struct wined3d_swapchain_state.
...
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-29 22:25:29 +01:00
Paul Gofman
18d1b2453f
wined3d: Add GPU information for NVIDIA GeForce GTX 1080 Mobile.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-16 22:00:21 +02:00
Henri Verbeet
c677a0b044
wined3d: Use wined3d_get_primary_adapter_luid() if we didn't get a valid LUID from Vulkan.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-14 20:32:08 +02:00
Henri Verbeet
1b192ce4cb
wined3d: Do not invalidate STATE_RENDER(WINED3D_RS_TWOSIDEDSTENCILMODE).
...
This is no longer used internally; two-sided stencil is handled as part of
STATE_DEPTH_STENCIL.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 18:19:06 +02:00
Henri Verbeet
e154c95355
wined3d: Clear the graphics pipeline key stencil test state when the stencil test is disabled.
...
The state itself is ignored in this case, but could still cause additional
pipeline variants to be created. That's mostly a consideration for Direct3D 9
and before, since Direct3D 10 and 11 already normalise disabled stencil test
state themselves.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 18:19:04 +02:00
Henri Verbeet
227605569a
wined3d: Avoid accessing NULL depth/stencil state in wined3d_context_vk_update_graphics_pipeline_key().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-13 18:19:03 +02:00
Henri Verbeet
43dddbae7b
wined3d: Make adapter_vk_clear_uav() static.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-12 18:44:36 +02:00
Zhiyi Zhang
62fa286edf
wined3d: Clean up swapchain state on wined3d_swapchain_init() failure paths.
...
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-12 18:43:52 +02: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
Zhiyi Zhang
e62b6fa12d
dxgi: Support Alt+Enter for d3d12 swapchains.
...
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
Henri Verbeet
e1e28fe60d
wined3d: Implement stream output queries for the Vulkan adapter.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:24 +02:00
Henri Verbeet
cee2e53c3b
wined3d: Implement stream output for the Vulkan adapter.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:22 +02:00
Henri Verbeet
3ee141b81d
wined3d: Implement vertex shader stream output in the SPIR-V shader backend.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:20 +02:00
Henri Verbeet
3d883c640c
wined3d: Only store unique stream output descriptions.
...
This allows us to compare them by pointer.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:18 +02:00
Henri Verbeet
10bfc47a48
wined3d: Initialise the list of Vulkan device extensions during adapter initialisation.
...
There's no reason to wait until wined3d device creation.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:16 +02:00
Henri Verbeet
f494552c10
wined3d: Implement rasteriser discard for the Vulkan adapter.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:14 +02:00
Henri Verbeet
6a6bbf1828
wined3d: Copy the correct "binding_base" size in shader_spirv_select().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:12 +02:00
Zhiyi Zhang
0e58bcea7f
dxgi: Retrieve d3d12 swapchain fullscreen state from wined3d.
...
Once Alt+Enter handling is implemented, the fullscreen state may change
without dxgi necessarily being aware of it.
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-05 20:50:57 +02:00
Zebediah Figura
95ab7e8a09
wined3d: Correct off-by-one errors when comparing against ARRAY_SIZE.
...
Spotted by Alex Henrie.
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-10-01 21:48:20 +02:00
Zebediah Figura
7665383553
wined3d: Check for UAV support in wined3d_check_device_format.
...
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-09-30 15:53:07 +02:00
Zebediah Figura
ba29503654
wined3d: Introduce WINED3DFMT_FLAG_UNORDERED_ACCESS.
...
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-09-30 15:53:05 +02:00
Paul Gofman
97636bc9b6
wined3d: Use partial bind counts instead of partial bind flags.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 18:33:54 +02:00
Paul Gofman
674dc3b107
wined3d: Fix 3d texture layer count for bind tracking.
...
Fixes out of bounds access introduced by commit
61e02c5e4f
and RiME crash on start.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-29 18:33:51 +02:00
Zebediah Figura
2014d975cc
wined3d: Move the depth function to wined3d_depth_stencil_state.
...
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-09-29 18:33:37 +02:00
Zebediah Figura
2b170bbd8b
wined3d: Move the stencil depth fail operation to wined3d_depth_stencil_state.
...
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-09-29 18:33:35 +02:00
Zebediah Figura
9c744d5cb9
wined3d: Move the stencil fail operation to wined3d_depth_stencil_state.
...
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-09-29 18:33:33 +02:00
Zebediah Figura
2479702652
wined3d: Move the stencil pass operation to wined3d_depth_stencil_state.
...
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-09-29 18:33:31 +02:00
Zebediah Figura
ba4c2ac03a
wined3d: Move the stencil function to wined3d_depth_stencil_state.
...
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-09-29 18:33:29 +02:00
Zebediah Figura
690ff3dbea
wined3d: Move the stencil write mask to wined3d_depth_stencil_state.
...
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-09-28 17:03:58 +02:00
Zebediah Figura
92ca89b4a5
wined3d: Move the stencil read mask to wined3d_depth_stencil_state.
...
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-09-28 17:03:58 +02:00
Zebediah Figura
94becf6fc6
wined3d: Move the stencil enable state to wined3d_depth_stencil_state.
...
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-09-28 17:03:58 +02:00
Zebediah Figura
4a5760b28b
wined3d: Move the depth write enable state to wined3d_depth_stencil_state.
...
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-09-28 17:03:58 +02:00
Zebediah Figura
9bfc0f7094
wined3d: Free cached depth/stencil states in wined3d_device_uninit_3d().
...
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-09-28 17:03:57 +02:00
Zebediah Figura
1acc410b10
wined3d: Fully move the depth buffer enable state to wined3d_depth_stencil_state.
...
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-09-25 16:50:19 +02:00
Zebediah Figura
2612381273
wined3d: Introduce a depth/stencil state object.
...
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-09-25 16:50:19 +02:00
Henri Verbeet
69ba059dcb
wined3d: Implement sample masks for the Vulkan adapter.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 16:43:30 +02:00
Paul Gofman
61e02c5e4f
wined3d: Track SRV to RTV aliasing on sub resource level.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 16:43:26 +02:00
Paul Gofman
774e4b2ea3
wined3d: Don't check for readonly depth / stencil in context_preload_texture().
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 16:43:22 +02:00
Paul Gofman
1b8ccaab47
wined3d: Track resource binding as render target.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 16:43:18 +02:00
Zebediah Figura
8b4e07d5f3
wined3d: Factor out wined3d_state_uses_depth_buffer().
...
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-09-24 16:42:19 +02:00
Henri Verbeet
2558f5f218
wined3d: Implement shader_spirv_compile_vk().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 15:03:51 +02:00
Henri Verbeet
3f3b0ac1f0
wined3d: Do not accumulate ended queries in wined3d_query_vk_poll().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 15:03:47 +02:00
Zebediah Figura
2f94e72b80
wined3d: Read the SM5 resource data type instruction modifier.
...
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-09-03 18:19:24 +02:00
Zebediah Figura
9610e71f34
wined3d: Read the SM5 resource type instruction modifier.
...
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-09-03 18:19:24 +02:00
Zebediah Figura
d08ef1e2ca
wined3d: Implement OpenGL sample masks.
...
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-09-02 21:25:26 +02:00
Zebediah Figura
21017243b8
wined3d: Store the sample mask in wined3d_state.
...
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-09-02 21:25:23 +02:00
Zebediah Figura
22c3331317
wined3d: Rename wined3d_sm4_immconst_type to wined3d_sm4_dimension.
...
These bits are used in all register tokens, not just immediate constants.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-13 21:11:55 +02:00
Matteo Bruni
399e01f9e5
wined3d: Get rid of default label in debug_cs_op() switch.
...
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
901042a123
wined3d: Remove some unnecessary "inline" qualifiers.
...
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
ffc3c099d4
wined3d: Set proper values for the guard band caps.
...
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
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
1e25ff3cc4
wined3d: Correctly destroy the adapter on format initialization failure in no3d mode.
...
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
86459002f1
wined3d: Update comment about sample_c_lz translation in GLSL.
...
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-17 23:16:51 +02:00
Matteo Bruni
435f7fb2f2
wined3d: Add GPU information for AMD Raven Ridge.
...
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-17 23:16:51 +02:00
Matteo Bruni
29dc8534f1
wined3d: Disable depth textures with backbuffer ORM.
...
We currently don't have any way to copy the depth buffer from the
DRAWABLE to the TEXTURE location, aside from FBOs.
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-17 23:16:51 +02:00
Matteo Bruni
6d22962101
wined3d: Update reported NVIDIA driver version for Fermi+ GPUs.
...
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:23 +02:00
Matteo Bruni
4a274314ff
wined3d: Update reported AMD RX driver version.
...
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:21 +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
Matteo Bruni
a76475909d
wined3d: Fix / update reported driver model version.
...
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:17 +02:00
Zebediah Figura
d117156862
wined3d: Mark the stateblock as dirty in wined3d_stateblock_multiply_transform().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49422
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-07-09 17:39:03 +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
Zhiyi Zhang
597433ab6b
wined3d: Call wined3d_adapter_init() before initialising any adapter field.
...
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
Gabriel Ivăncescu
0f024390ca
wined3d: Restore the window visibility and z-order upon exiting fullscreen, if requested.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 21:18:14 +02:00
Gabriel Ivăncescu
e041ff1f91
wined3d: Don't show the window if no window changes were requested.
...
Based on a patch by Rémi Bernon.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 21:18:08 +02:00
Gabriel Ivăncescu
7c0e2a0ca6
wined3d: Don't change the swapchain window z-order if no window changes were requested.
...
Based on a patch by Rémi Bernon.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-07 21:18:05 +02:00
Paul Gofman
cfeefc6b94
wined3d: Set user memory separately for texture sub resources.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=43232
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-17 18:35:07 +02:00
Henri Verbeet
0801337496
wined3d: Get rid of the special format handling in wined3d_check_depth_stencil_format().
...
By simply removing WINED3DFMT_FLAG_DEPTH_STENCIL from
WINED3DFMT_S1_UINT_D15_UNORM and WINED3DFMT_S4X4_UINT_D24_UNORM. That's also
the only way these formats could be used by GL, so this allows us to remove
them from format_texture_info[] completely.
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
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
Paul Gofman
5b287bb0ca
wined3d: Merge _USER_MEMORY and _SYSMEM locations.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49375
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
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
67d0038e49
wined3d: Do not explicitly check 3D depth/stencil capabilities in wined3d_check_device_format().
...
WINED3D_RTYPE_NONE checks both 2D and 3D resource capabilities, but has
special handling for 3D depth/stencil capabilities. For
WINED3D_RTYPE_TEXTURE_3D, WINED3D_BIND_DEPTH_STENCIL is not an allowed bind
flag, so we never get here. This fixes a regression introduced by commit
9b8847ed7b
.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-15 20:56:48 +02:00
Henri Verbeet
319ba87ab1
wined3d: Partially implement adapter_vk_clear_uav().
...
This is easy, and sufficient in a lot of cases. However, for a more
complete implementation, we'll want to do something more similar to
vkd3d.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-05 16:54:35 +02:00
Henri Verbeet
26e961b39a
wined3d: Reference the back buffer in wined3d_swapchain_vk_blit().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-05 16:54:35 +02:00
Henri Verbeet
c6f94cc87b
wined3d: Clear WINED3DFMT_FLAG_DEPTH_STENCIL if the format is not supported as FBO attachment.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-05 16:54:35 +02:00
Henri Verbeet
9b8847ed7b
wined3d: Introduce WINED3DFMT_FLAG_DEPTH_STENCIL.
...
To indicate whether WINED3D_BIND_DEPTH_STENCIL is valid for the format.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-05 16:54:35 +02:00
Henri Verbeet
c73f4a8129
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in create_and_bind_fbo_attachment().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:52 +02:00
Henri Verbeet
6fd061ba19
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in query_internal_format().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:50 +02:00
Henri Verbeet
28145b97eb
wined3d: Use "depth_size" to check for a depth format in resolve_depth_buffer().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:47 +02:00
Henri Verbeet
831701d3f4
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in the FBO cache.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:44 +02:00
Henri Verbeet
f570c9b655
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in fbo_blitter_blit().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 13:50:42 +02:00
Henri Verbeet
8d7c39b860
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in texture2d_depth_blt_fbo().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:49:01 +02:00
Henri Verbeet
2ae6de5287
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in texture2d_blt().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:58 +02:00
Henri Verbeet
97a250075a
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in wined3d_texture_blt().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:55 +02:00
Henri Verbeet
2b2a6ebdd1
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in ffp_blit_supported().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:52 +02:00
Henri Verbeet
ce4b63dc88
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in glsl_blitter_supported().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:48 +02:00
Henri Verbeet
9af34f9aea
wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in arbfp_blit_supported().
...
The idea is to get rid of the WINED3DFMT_FLAG_DEPTH and
WINED3DFMT_FLAG_STENCIL format flags, and instead introduce a flag similar to
WINED3DFMT_FLAG_RENDERTARGET that indicates whether the format can be used
with WINED3D_BIND_DEPTH_STENCIL.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:43 +02:00
Henri Verbeet
4616867798
wined3d: Get rid of the "d3d_initialized" check in wined3d_texture_update_map_binding().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:39 +02:00
Henri Verbeet
cc6d90b823
wined3d: Get rid of the "d3d_initialized" check in device_resource_released().
...
This used to protect against accessing the framebuffer state on the no3d
adapter; that's no longer a concern.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:34 +02:00
Henri Verbeet
c125c65846
wined3d: Get rid of the "d3d_initialized" check in context_resource_released().
...
When this was introduced in commit 401e99b0c0
,
it protected against calling the equivalent of context_acquire() on the
equivalent of the no3d adapter. Commit
94d33d3e86
removed the call in question.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:30 +02:00
Henri Verbeet
2200b841d5
wined3d: Get rid of the "d3d_initialized" check in wined3d_device_reset().
...
We require an implicit swapchain, so "d3d_initialized" is always true.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:24 +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
f06f28cf04
wined3d: Explicitly check for WINED3D_NO3D instead of "d3d_initialized" in surface_convert_format().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:14:51 +02:00
Henri Verbeet
42a909b4f9
wined3d: Check for GPU access before attempting an upload blit in texture2d_blt().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:14:47 +02:00
Henri Verbeet
17a1391fb6
wined3d: Create WINED3D_NO3D swapchain surfaces without GPU access.
...
The main issue this addresses is that WINED3D_RESOURCE_ACCESS_GPU implies that
WINED3D_LOCATION_TEXTURE_RGB makes sense as a location for the texture.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:14:45 +02:00
Henri Verbeet
acb7923881
wined3d: Wait for the command stream to finish before removing the context in adapter_no3d_uninit_3d().
...
Like we do in adapter_gl_uninit_3d() and adapter_vk_uninit_3d().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 11:14:34 +02:00
Henri Verbeet
9aeef376e5
wined3d: Implement swapchains for the Vulkan adapter.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:31 +02:00
Henri Verbeet
a8141ef080
wined3d: Move swapchain buffer discarding to wined3d_cs_exec_present().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:30 +02:00
Henri Verbeet
859514a684
wined3d: Map Vulkan adapter bo's persistently on 64-bit architectures.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:30 +02:00
Henri Verbeet
d777b9492d
wined3d: Initialise more caps and limits in wined3d_adapter_vk_init_d3d_info().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:30 +02:00
Henri Verbeet
a2e39d837e
wined3d: Use wined3d_buffer_vk_get_buffer_info() when binding Vulkan vertex buffers.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:30 +02:00