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