Józef Kucia
5a2dc97a5a
vkd3d: Add asserts() for root descriptor indices.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-18 00:59:40 +02:00
Józef Kucia
35ead5825d
vkd3d: Use vk_write_descriptor_set_from_root_descriptor() in more places.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-18 00:59:39 +02:00
Józef Kucia
869602cbea
vkd3d: Avoid using VkCopyDescriptorSet.
...
VkCopyDescriptorSet may result in the CPU reading GPU memory then
writing GPU memory.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-11 18:37:32 +02:00
Józef Kucia
cf23d71d5d
vkd3d: Avoid copying root descriptors.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-11 18:37:31 +02:00
Józef Kucia
604fd99637
vkd3d: Prepare descriptors once for all descriptor tables.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-11 18:37:29 +02:00
Józef Kucia
3b0d20c474
vkd3d: Simplify d3d12_command_list_set_root_descriptor().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-11 18:37:27 +02:00
Józef Kucia
7652a6e62c
vkd3d: Simplify d3d12_command_list_set_root_cbv().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-11 18:37:25 +02:00
Józef Kucia
fa6304ee04
vkd3d: Ignore D3D_PRIMITIVE_TOPOLOGY_UNDEFINED.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-08 22:25:04 +02:00
Józef Kucia
39886b2386
vkd3d: Downgrade FIXME() in d3d12_command_list_IASetIndexBuffer().
...
An app calls IASetIndexBuffer() with DXGI_FORMAT_UNKNOWN.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-08 22:25:04 +02:00
Józef Kucia
03b9f4ff5a
vkd3d: Implement d3d12_command_list_OMSetBlendFactor().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 20:33:03 +02:00
Józef Kucia
fe3ad21949
vkd3d: Fix 2D array depth stencil views.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 20:33:00 +02:00
Józef Kucia
2e65b78102
vkd3d: Fix shader stage bits for pipeline barriers.
...
The Vulkan spec says:
"Any pipeline stage included in srcStageMask or dstStageMask must be
supported by the capabilities of the queue family..."
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:39 +02:00
Józef Kucia
82fdd800e2
vkd3d: Pass VkQueueFamilyProperties to vkd3d_queue_create().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-28 01:12:37 +02:00
Józef Kucia
be4a775c07
vkd3d: Do not hardcode aspect mask in d3d12_command_list_ClearUnorderedAccessViewUint().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-14 19:17:50 +02:00
Józef Kucia
b9d7569b8c
vkd3d: Partially implement clears for texture UAVs.
...
In the long term, we may want to use shaders to clear UAVs.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-13 19:26:23 +02:00
Józef Kucia
11c00a157c
vkd3d: Implement simple pipeline cache.
...
Ideally, we would like to introduce a Vulkan extension to make vertex
buffer strides and primitive topology dynamic in Vulkan.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:16:21 +02:00
Józef Kucia
f3e48a9192
vkd3d: Reset command list state in d3d12_command_list_Reset().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:16:16 +02:00
Józef Kucia
9fe06825f8
vkd3d: Fix initial pipeline state.
...
d3d12_command_list_begin_command_buffer() was using the previous initial
pipeline state when called from d3d12_command_list_Reset().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:16:14 +02:00
Józef Kucia
cb24709980
vkd3d: Factor out d3d12_command_list_create_graphics_pipeline().
...
In preparation for pipeline cache.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:16:04 +02:00
Józef Kucia
b0bfe90c9e
vkd3d: Reuse descriptor pools.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:16:02 +02:00
Józef Kucia
7482794b0f
vkd3d: Use bigger descriptor pools.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-12 23:15:55 +02:00
Józef Kucia
c4c3634bc4
vkd3d: Rename vkd3d_queue_gpu_fence() to vkd3d_enqueue_gpu_fence().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 23:17:37 +02:00
Józef Kucia
bdc848b27a
vkd3d: Validate D3D12_BLEND_DESC.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:32:56 +02:00
Józef Kucia
d26300edd9
vkd3d: Do not store VkPipelineInputAssemblyStateCreateInfo in d3d12_command_list.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:32:52 +02:00
Józef Kucia
acc658a912
vkd3d: Avoid passing vkd3d_vk_device_procs to helper functions.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:32:50 +02:00
Józef Kucia
4cfd3a425f
vkd3d: Try to call vkCmdCopyQueryPoolResults() for multiple queries.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:32:48 +02:00
Józef Kucia
71e633cb1b
vkd3d: Simplify d3d12_command_list_IASetVertexBuffers().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:32:46 +02:00
Józef Kucia
80dbf329ca
vkd3d: Try to not invalidate current pipeline in IASetVertexBuffers().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-23 20:32:43 +02:00
Józef Kucia
d074fab10b
vkd3d: Reference count CPU descriptors.
...
We have to keep all image views referenced by all used VkFramebuffers.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 19:03:56 +02:00
Józef Kucia
90617d967d
vkd3d: Allow IASetVertexBuffers() with NULL buffer locations.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 19:03:40 +02:00
Józef Kucia
d9858b63b9
build: Check how many arguments pthread_setname_np() takes.
...
Based on a patch by Chip Davis.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:03:44 +02:00
Józef Kucia
c9380f8f7f
vkd3d: Try to keep current render pass as long as possible.
...
A lot of Vulkan commands must be recorded outside a render pass.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:02:33 +02:00
Józef Kucia
ffebe4524d
vkd3d: Avoid invalidating current framebuffer needlessly.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:02:30 +02:00
Józef Kucia
35748f9228
vkd3d: Avoid invalidating graphics pipeline and framebuffer.
...
Do not invalidate the current graphics pipeline and the current
framebuffer when a compute pipeline is bound.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:02:28 +02:00
Józef Kucia
b500207b79
vkd3d: Initialize all fields before calling d3d12_command_allocator_allocate_command_buffer().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:02:25 +02:00
Józef Kucia
ef999e1e2b
vkd3d: Call vkCmdBindDescriptorSets() only with valid descriptor set.
...
If the current pipeline state doesn't need any descriptors it is
perfectly valid to not have a descriptor set.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:02:20 +02:00
Józef Kucia
29f954be0a
libs/vkd3d: Assert that queue is valid in vkd3d_queue_acquire().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-16 11:02:06 +02:00
Józef Kucia
cc47b37c1d
libs/vkd3d: Factor out debug_ignored_node_mask().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-20 18:19:46 +02:00
Józef Kucia
89a2dc46dd
libs/vkd3d: Set names for internal threads.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-27 22:43:48 +02:00
Józef Kucia
6df54305e6
libs/vkd3d: Add support for 2D array render target views.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-26 21:58:54 +02:00
Józef Kucia
f0a1e14113
libs/vkd3d: Mark device as removed when command list in recording state is executed.
...
Fixes a GPU hang in test_device_removed_reason() on RADV.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-16 21:59:57 +02:00
Józef Kucia
2a430ae991
libs/vkd3d: Return early if there are no descriptors to update.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-13 19:08:12 +02:00
Józef Kucia
277cdd4e95
libs/vkd3d: Fix memory leak in d3d12_command_queue_ExecuteCommandLists().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-13 19:08:09 +02:00
Józef Kucia
830f7c1e49
libs/vkd3d: Propagate error code in vkd3d_fence_worker_stop().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-13 19:08:01 +02:00
Józef Kucia
0e86a6b353
libs/vkd3d: Use HRESULT as preferred error code.
...
For consistency.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-11 18:56:25 +02:00
Józef Kucia
bfd20ef1c8
libs/vkd3d: Add support for custom PRESENT state transitions.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-30 14:10:55 +02:00
Józef Kucia
26cbfbe647
libs/vkd3d: Implement d3d12_command_list_CopyResource() for textures.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-28 19:48:23 +02:00
Józef Kucia
abcd0348a0
libs/vkd3d: Fix single descriptor handles in d3d12_command_list_OMSetRenderTargets().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-13 18:39:47 +01:00
Józef Kucia
dd6dedd9d1
libs/vkd3d: Add remaining helper functions for CPU descriptor handles.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-08 21:59:04 +01:00
Józef Kucia
55025f7bec
libs/vkd3d: Get rid of vkd3d_get_vk_queue().
...
Replaced by vkd3d_acquire_vk_queue().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-16 20:11:12 +01:00
Józef Kucia
12ca2bbcf6
libs/vkd3d: Add thread-safe API for accessing Vulkan command queues.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-15 17:51:39 +01:00
Józef Kucia
db2e1d402e
libs/vkd3d: Synchronize access to Vulkan queues.
...
Access to VkQueue must be externally synchronized.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-15 17:51:32 +01:00
Józef Kucia
604056daf4
libs/vkd3d: Allow library user to create internal threads.
...
We want to create Win32 threads when running under Wine.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-12 19:26:58 +01:00
Józef Kucia
5d85da0d84
libs/vkd3d: Release current command allocator in d3d12_command_list_Close().
...
d3d12_command_allocator_free_command_buffer() is not a very accurate name.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-09 20:37:12 +01:00
Józef Kucia
f2b37c732a
libs/vkd3d: Use if-else in d3d12_command_list_get_fb_extent().
2017-10-24 12:10:48 +02:00
Józef Kucia
c70a023aeb
libs/vkd3d: Remove FIXME comment from vk_barrier_parameters_from_d3d12_resource_state().
2017-10-24 12:10:48 +02:00
Józef Kucia
b211df683e
libs/vkd3d: Implement copying between depth/stencil and color textures.
...
This could be implemented more efficiently, but ideally we would get
a Vulkan extension for copying between depth/stencil and color textures.
2017-10-20 18:27:17 +02:00
Józef Kucia
853068c84d
libs/vkd3d: Get rid of host writes memory dependency for intial state transitions.
2017-10-06 17:06:31 +02:00
Józef Kucia
97bfba1167
libs/vkd3d: Avoid read access bits in source access masks.
...
A memory dependency is used to make memory writes available
and visible.
2017-10-06 17:06:31 +02:00
Józef Kucia
67aed755ab
libs/vkd3d: Implement d3d12_command_list_ClearUnorderedAccessViewUint() for R32_UINT buffer views.
...
Ideally, we would store additional informations only in CPU descriptors.
2017-10-04 13:55:33 +02:00
Józef Kucia
fecc94cebc
libs/vkd3d: Add helpers for dereferencing descriptor handles.
2017-10-04 13:55:33 +02:00
Józef Kucia
14d975da8d
libs/vkd3d: Unroll descriptor copies for SRVs and UAVs.
...
Consecutive binding updates need to have the same descriptor type
according to validation layers.
2017-09-22 16:42:07 +02:00
Józef Kucia
6ef1961ed0
libs/vkd3d: Avoid recording invalid vkCmdCopyImage() commands.
2017-09-21 15:12:13 +02:00
Józef Kucia
54cd424daf
libs/vkd3d: Implement d3d12_command_list_SetGraphicsRootShaderResourceView().
2017-09-19 17:29:20 +02:00
Józef Kucia
eb8eba02bd
libs/vkd3d: Implement d3d12_command_list_SetComputeRootShaderResourceView().
2017-09-19 17:29:20 +02:00
Józef Kucia
90cf804d9b
libs/vkd3d: Use Vulkan pipeline cache for graphics pipelines.
2017-09-19 10:58:04 +02:00
Józef Kucia
acfd64c20e
libs/vkd3d: Avoid copying descriptors for dirty root descriptor tables.
2017-09-18 15:40:42 +02:00
Józef Kucia
2ea8ffb554
libs/vkd3d: Avoid vkCmdCopyQueryPoolResults() for not issued queries.
...
The Vulkan spec states:
* "If the query does not become available in a finite amount of time
(e.g. due to not issuing a query since the last reset), a
VK_ERROR_DEVICE_LOST error may occur."
* "If queries will never finish (e.g. due to being reset but not
issued), then vkGetQueryPoolResults may not return in finite time."
2017-09-14 14:57:09 +02:00
Józef Kucia
334c532401
libs/vkd3d: Implement d3d12_command_list_CopyResource() for buffers.
2017-09-14 14:57:09 +02:00
Józef Kucia
8e802ed0af
libs/vkd3d: Update descriptor table ranges only with matching descriptor types.
2017-09-11 22:35:16 +02:00
Józef Kucia
a78fe60ef8
Revert "libs/vkd3d: Skip unbound UAV counters."
...
This reverts commit d9bc635d1a
.
We should not need to handle this invalid behavior. It was triggered
by the bug in d3d12_command_list_update_descriptor_table().
2017-09-11 22:35:16 +02:00
Józef Kucia
1cde37d341
libs/vkd3d: Fix updating descriptor sets for descriptor tables with gaps.
...
Fixes 9afaed918d
.
2017-09-11 22:35:16 +02:00
Józef Kucia
32966338df
libs/vkd3d: Get rid of UAV counter count from d3d12_pipeline_state.
2017-09-08 15:30:48 +02:00
Józef Kucia
e8868affc0
libs/vkd3d: Clear UAV counters dirty mask after updating descriptors.
2017-09-08 15:30:48 +02:00
Józef Kucia
d9bc635d1a
libs/vkd3d: Skip unbound UAV counters.
2017-09-08 15:04:30 +02:00
Józef Kucia
9afaed918d
libs/vkd3d: Bind descriptor set for UAV counters.
2017-09-08 15:04:30 +02:00
Józef Kucia
19dc6c412e
libs/vkd3d: Constify root signature pointers.
2017-09-08 15:04:30 +02:00
Józef Kucia
37f4c9d2a3
libs/vkd3d: Print only TRACE() messages for not initialized descriptors.
...
A descriptor do not have to be initialized if it is not used by shaders.
2017-09-07 17:48:43 +02:00
Józef Kucia
23150f6050
libs/vkd3d: Update Vulkan descriptor sets just before draw call.
2017-09-05 11:53:55 +02:00
Józef Kucia
36d7578093
libs/vkd3d: Move descriptor set functions closer to top of file.
...
In prep for the next commit.
2017-09-05 11:53:55 +02:00
Józef Kucia
a780b7a11c
libs/vkd3d: Implement reference counting for Vulkan views and samplers.
2017-09-04 18:33:09 +02:00
Józef Kucia
62bd4e6e63
libs/vkd3d: Add support for OffsetInDescriptorsFromTableStart.
2017-08-31 11:21:34 +02:00
Józef Kucia
d8847aa462
libs/vkd3d: Fix texture region copying for miplevels other than 0.
2017-08-31 09:42:50 +02:00
Józef Kucia
0dca9909d9
libs/vkd3d: Copy single layer for array textures in d3d12_command_list_CopyTextureRegion().
2017-08-31 09:42:50 +02:00
Józef Kucia
d42f46cab6
libs/vkd3d: Use d3d12_resource_is_buffer() in d3d12_command_list_ResolveQueryData().
2017-08-31 09:29:02 +02:00
Józef Kucia
904858f4a9
libs/vkd3d: Introduce d3d12_resource_is_texture() helper function.
...
Makes some code easier to read.
2017-08-30 18:31:52 +02:00
Sven Hesse
4aa534914b
libs/vkd3d: Implement CopyTextureRegion() for texture to texture.
2017-08-30 16:53:29 +02:00
Henri Verbeet
3019a3e8f1
libs/vkd3d: Support both native and Win32 wchar_t.
2017-08-29 16:36:05 +02:00
Sven Hesse
1f51eebe12
libs/vkd3d: Fail in GetTimestampFrequency() for queues without timestamp support.
2017-08-29 15:17:39 +02:00
Sven Hesse
5b6bd40464
libs/vkd3d: Cache the number of valid bits in queue timestamp queries.
2017-08-29 15:16:41 +02:00
Sven Hesse
4bfa651561
libs/vkd3d: Reset the queries before use.
2017-08-29 14:05:49 +02:00
Sven Hesse
531875d924
libs/vkd3d: Add a FIXME for binary occlusion queries.
2017-08-29 13:38:39 +02:00
Sven Hesse
027cc05209
libs/vkd3d: Set VK_QUERY_CONTROL_PRECISE_BIT for occlusion queries.
2017-08-29 13:38:39 +02:00
Józef Kucia
6800dc8e40
libs/vkd3d: Use switch instead of multiple ifs in vk_write_descriptor_set_from_d3d12_desc().
2017-08-29 12:43:04 +02:00
Józef Kucia
7864ac4d67
libs/vkd3d: Merge if statements in vk_write_descriptor_set_from_d3d12_desc().
2017-08-29 12:43:04 +02:00
Józef Kucia
61044c462b
libs/vkd3d: Add FIXME() for ignored max command count.
2017-08-29 10:32:24 +02:00
Henri Verbeet
a624787479
libs/vkd3d: Simplify d3d12_command_list_ResolveQueryData().
2017-08-28 20:38:17 +02:00
Henri Verbeet
040082d965
libs/vkd3d: Simplify d3d12_command_list_EndQuery().
2017-08-28 20:38:05 +02:00
Henri Verbeet
9af2876958
libs/vkd3d: Simplify d3d12_command_list_BeginQuery().
2017-08-28 20:37:51 +02:00
Henri Verbeet
7e5af314f1
libs/vkd3d: Validation should happen in the d3d12/Vulkan validation layers.
...
Unless we have tests that say otherwise.
2017-08-28 20:37:17 +02:00