Henri Verbeet
2aeab85c27
wined3d: Add decompression information for BC4_UNORM.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-22 17:57:47 +02:00
Henri Verbeet
126f0e6ed3
wined3d: Implement OpenGL image UAV clears using ARB_clear_texture.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 21:24:25 +02:00
Henri Verbeet
cc31ca8885
wined3d: Introduce wined3d_mask_from_size().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-07 21:24:23 +02:00
Matteo Bruni
7ab5f90396
wined3d: Rename gen_ffp_frag_op().
...
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-06-01 21:24:46 +02: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
51a901e34e
wined3d: Store the wined3d primitive type in the wined3d state structure.
...
As opposed to the OpenGL primitive type.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-20 20:10: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
5beefc63ba
wined3d: Add Vulkan format information for WINED3DFMT_B8G8R8X8_UNORM_SRGB.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-01 21:51:31 +02:00
Henri Verbeet
f0adc5c0b5
wined3d: Add Vulkan format information for WINED3DFMT_B8G8R8X8_UNORM.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-01 21:51:31 +02:00
Henri Verbeet
a3874561cd
wined3d: Add a swizzle to the Vulkan format information for WINED3DFMT_A8_UNORM.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-01 21:51:31 +02:00
Henri Verbeet
fcbdddfb55
wined3d: Create Vulkan image views for shader resource views.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-30 21:01:18 +02:00
Henri Verbeet
359d53d4d1
wined3d: Add Vulkan format information for WINED3DFMT_D24_UNORM_S8_UINT.
...
On some implementations we could use VK_FORMAT_D24_UNORM_S8_UINT
instead, but that's not universally supported.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-29 10:21:30 +02:00
Henri Verbeet
81cd4e21bf
wined3d: Add Vulkan format information for WINED3DFMT_X32_TYPELESS_G8X24_UINT.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-29 10:21:28 +02:00
Henri Verbeet
4ecb026c49
wined3d: Add Vulkan format information for WINED3DFMT_R32_FLOAT_X8X24_TYPELESS.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-29 10:21:25 +02:00
Henri Verbeet
3f6c629ecc
wined3d: Add Vulkan format information for WINED3DFMT_D32_FLOAT_S8X24_UINT.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-28 11:17:54 +02:00
Henri Verbeet
621f25fddd
wined3d: Add Vulkan format information for WINED3DFMT_R9G9B9E5_SHAREDEXP.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-28 11:17:51 +02:00
Zhiyi Zhang
c2a20e7f59
wined3d: Fix uninitialised variable warnings.
...
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-04-21 21:51:05 +02:00
Henri Verbeet
3685c2199b
wined3d: Implement Vulkan texture uploads.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 21:10:58 +02:00
Chip Davis
2d86752198
wined3d: Use GL_APPLE_rgb_422 for UYVY and YUY2 surfaces.
...
Theoretically, we could use it to support UYVY and YUY2 *textures* as
well, but it would still require converting from YUV to RGB after
sampling.
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-17 19:58:11 +02:00
Henri Verbeet
9529f08e1a
wined3d: Implement a Vulkan device memory allocator.
...
Note that the constants like WINED3D_ALLOCATOR_CHUNK_SIZE and
WINED3D_ALLOCATOR_MIN_BLOCK_SIZE are somewhat arbitrary, rather than the
result of careful tuning. That's mostly because we have a couple of
known stalls in e.g. the command stream that would largely invalidate
such tuning.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-17 19:58:11 +02:00
Chip Davis
42e932e63f
wined3d: Remove WINED3D_RS_EDGEANTIALIAS.
...
Handle this render state similarly to D3DRS_ZFUNC, by mapping it in the
client DLLs.
As far as I can tell, save for the fact that it's only supposed to apply
to lines forming a convex outline, it's roughly equivalent to
D3DRS_ANTIALIASEDLINEENABLE. We definitely handled it the same way.
Curiously, even though we supported the render state, we didn't set the
corresponding capability bit. Do that now.
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-17 19:40:26 +02:00
Chip Davis
e463fa29ef
wined3d: Introduce compare_uint().
...
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-08 21:01:18 +02:00
Matteo Bruni
e11ae91b9c
wined3d: Store the framebuffer inline in struct wined3d_state.
...
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
Matteo Bruni
4ff594e885
wined3d: Don't pass the whole context to needs_srgb_write().
...
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-18 16:53:04 +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
Zebediah Figura
04453496a2
wined3d: Move the blend enable state to wined3d_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>
2020-03-10 17:59:24 +01:00
Paul Gofman
2a913ecb69
wined3d: Support NVIDIA alpha to coverage state.
...
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-02-18 20:33:09 +01:00
Paul Gofman
941bd46597
wined3d: Support sRGB reads for WINED3DFMT_B5G6R5_UNORM.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48302
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-01-27 14:44:18 +01:00
Liam Middlebrook
1fa427f2d0
winevulkan: Update to VK spec version 1.1.130.
...
Also update a single define reference in wined3d since VK_EXT_device_address
was promoted to KHR and renamed VK_ERROR_INVALID_DEVICE_ADDRESS_EXT to
VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR.
Signed-off-by: Liam Middlebrook <lmiddlebrook@nvidia.com>
Signed-off-by: Piers Daniell <pdaniell@nvidia.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-22 10:20:46 +01:00
Henri Verbeet
cf44283227
wined3d: Introduce WINED3D_BIND_INDIRECT_BUFFER.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-12 23:17:05 +01:00