Commit Graph

9961 Commits

Author SHA1 Message Date
Henri Verbeet 4358ddc75f wined3d: Implement rasterisation object support for the Vulkan adapter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 21:49:30 +02:00
Henri Verbeet 4cb110dd18 wined3d: Implement blend object support for the Vulkan adapter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 21:49:28 +02:00
Henri Verbeet 5e134b6b60 wined3d: Implement scissor rectangle support for the Vulkan adapter.
No multi-viewport support yet.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 21:49:25 +02:00
Henri Verbeet 299eb1f52a wined3d: Bind Vulkan vertex buffers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 21:49:22 +02:00
Henri Verbeet b55228694f wined3d: Create Vulkan pipeline objects.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 21:49:20 +02:00
Józef Kucia f4e0ca2199 wined3d: Implement shader_spirv_select().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 21:49:18 +02:00
Henri Verbeet 7d9c1db2ab wined3d: Implement indexed Vulkan draws.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:33 +02:00
Henri Verbeet 8744ae252a wined3d: Implement indirect Vulkan draws.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:30 +02:00
Henri Verbeet eccff1add8 wined3d: Implement Vulkan draws.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:27 +02:00
Józef Kucia a282a8e765 wined3d: Introduce a (stub) SPIR-V fixed-function fragment pipe implementation.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:24 +02:00
Józef Kucia 029282dedc wined3d: Introduce a (stub) SPIR-V fixed-function vertex pipe implementation.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:21 +02:00
Henri Verbeet 7379451a06 wined3d: Add a supported extensions array to the wined3d_vk_info structure.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:19 +02:00
Henri Verbeet a42808b54a wined3d: Reference shader resources in wined3d_context_vk_update_descriptors().
Instead of in wined3d_context_vk_load_shader_resources(). Loading resources
can end up flushing the current command buffer. There's also no reason to
reference the same resource multiple times by the same command buffer.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 19:35:14 +02:00
Zhiyi Zhang c84b2f97c1 wined3d: Remove no longer needed output parameter in wined3d_swapchain_state_resize_target().
Current output is stored as part of the swapchain state now.

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-05-18 19:35:07 +02:00
Zhiyi Zhang 6089130da4 wined3d: Remove no longer needed output parameter in wined3d_swapchain_state_set_fullscreen().
struct wined3d_swapchain_desc has already specified a output parameter now.

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-05-18 19:34:57 +02:00
Zhiyi Zhang b6495fa31d wined3d: Restore display mode for the previous output before changing to another output.
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-05-18 19:34:54 +02:00
Zhiyi Zhang 7962c3194e wined3d: Move device window to the correct output when handling WM_ACTIVATEAPP with full screen 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-05-18 19:34:51 +02:00
Paul Gofman f02b0226ca wined3d: Allow setting user memory for mipmapped textures in wined3d_texture_update_desc().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49105
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-05-14 23:12:31 +02:00
Stefan Dösinger ac06731e49 wined3d: Implement Vulkan NULL cube image shader resource view descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Stefan Dösinger dbe014212c wined3d: Implement Vulkan NULL 3D image shader resource view descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Henri Verbeet afa075360b wined3d: Implement Vulkan NULL 2D image shader resource view descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Henri Verbeet dc6d09eb17 wined3d: Implement Vulkan NULL 1D image shader resource view descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Henri Verbeet 83d7d14e5c wined3d: Implement Vulkan NULL buffer shader resource view descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Henri Verbeet f1f3bb7354 wined3d: Implement Vulkan unordered access view counter descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Henri Verbeet 3d05e4da7d wined3d: Implement Vulkan image unordered access view descriptors.
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 d9db5298d6 wined3d: Implement Vulkan buffer unordered access view descriptors.
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 2a9142de5c wined3d: Implement Vulkan sampler descriptors.
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 35b27b4aec wined3d: Implement Vulkan buffer shader resource view descriptors.
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 bd63ec2f63 wined3d: Implement Vulkan image shader resource view descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-13 22:07:32 +02:00
Zhiyi Zhang f6d2e03750 wined3d: Get output from 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-05-13 22:07:32 +02:00
Zhiyi Zhang e79d577be8 wined3d: Determine output from window position in wined3d_hook_proc().
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-05-13 22:07:32 +02:00
Zhiyi Zhang d3e088cc00 wined3d: Specify a wined3d output for swapchain creation.
As tests showed, DirectDraw, Direct3D 8 and 9 always use the adapter
specified in the device creation parameters regardless of the device
window position when creating a swapchain. Whereas DXGI uses the device
window position to determine which DXGI output to use.

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-05-13 22:07:32 +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 9b9bde8d82 wined3d: Implement Vulkan constant buffer descriptors.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Henri Verbeet 9049104df2 wined3d: Implement adapter_vk_dispatch_compute().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Henri Verbeet c484ba1c00 wined3d: Introduce a SPIR-V shader backend for the Vulkan adapter.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Henri Verbeet 40e2784ed2 wined3d: Check for a bound compute shader in wined3d_cs_exec_dispatch().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Henri Verbeet 552b335ae8 wined3d: Introduce WINED3D_BITMAP_SIZE.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-12 23:07:44 +02:00
Zhiyi Zhang e847b08229 wined3d: Move device window to the correct output when changing swapchain state to full screen.
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-05-08 20:52:14 +02:00
Zhiyi Zhang 094c344f27 wined3d: Release wined3d mutex if wined3d_swapchain_state_init() failed in wined3d_swapchain_init().
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-05-08 20:52:14 +02:00
Zhiyi Zhang 1976685a0f wined3d: Fix an uninitialised variable warning.
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-05-05 20:53:03 +02:00
Zhiyi Zhang 7ee8674ed2 wined3d: Move device window to the correct output in wined3d_swapchain_state_resize_target().
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-05-05 20:53:03 +02:00
Henri Verbeet 8319d154cc wined3d: Submit the current command buffer in adapter_vk_flush_context().
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 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 385d06daa5 wined3d: Create Vulkan samplers for samplers.
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 0c27d244f7 wined3d: Create Vulkan buffer views for unordered access view counters.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-30 21:01:29 +02:00
Henri Verbeet 3d10118bea wined3d: Create Vulkan buffer views for unordered access views.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-30 21:01:27 +02:00
Henri Verbeet f45dd54332 wined3d: Create Vulkan image views for unordered access views.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-30 21:01:25 +02:00