170 Commits

Author SHA1 Message Date
Józef Kucia
b8c31b771d libs/vkd3d: Add missing return statement in d3d12_command_list_ResolveQueryData(). 2017-08-28 13:03:37 +02:00
Józef Kucia
faf86ebc58 libs/vkd3d: Add missing trace messages. 2017-08-28 13:03:37 +02:00
Sven Hesse
f8b7b26372 libs/vkd3d: Implement ResolveQueryData() for QUERY_TYPE_TIMESTAMP. 2017-08-25 15:16:06 +02:00
Sven Hesse
988e1a96de libs/vkd3d: Implement EndQuery() for QUERY_TYPE_TIMESTAMP. 2017-08-25 15:16:05 +02:00
Sven Hesse
65f63d14fa libs/vkd3d: Implement d3d12_command_queue_GetTimestampFrequency(). 2017-08-25 15:16:02 +02:00
Józef Kucia
d443e0eb00 libs/vkd3d: Add support for buffer SRVs. 2017-08-22 12:39:56 +02:00
Józef Kucia
fbc5861728 libs/vkd3d: Track resource usage for UAV clears. 2017-08-21 12:41:07 +02:00
Józef Kucia
92bb7969a5 libs/vkd3d: Create push descriptor set only if needed. 2017-08-18 17:08:56 +02:00
Józef Kucia
08284f0f85 libs/vkd3d: Fix draw calls with no framebuffer attachments. 2017-08-18 17:08:56 +02:00
Józef Kucia
1f22a9bb6b libs/vkd3d: Fix draws with no render targets. 2017-08-18 14:52:40 +02:00
Józef Kucia
1d5b8b7d32 libs/vkd3d: Implement depth/stencil resource views. 2017-08-16 17:38:33 +02:00
Józef Kucia
32e69fa945 libs/vkd3d: Use KHR_push_descriptor for root descriptors.
Thanks to KHR_push_descriptor, we do not have to allocate descriptor
sets for subsequent root descriptor parameters updates.
2017-08-11 13:58:04 +02:00
Józef Kucia
1261c7ea0f libs/vkd3d: Do not update bound descriptor sets. 2017-08-11 13:58:04 +02:00
Józef Kucia
6ae3f1ee29 libs/vkd3d: Introduce vkd3d_pipeline_bindings structure. 2017-08-11 13:58:04 +02:00
Józef Kucia
3b854a0023 libs/vkd3d: Get rid of bool parameter to d3d12_command_allocator_free_resources(). 2017-08-11 13:58:04 +02:00
Józef Kucia
b0e47baebf libs/vkd3d: Implement d3d12_command_list_Set{Compute,Graphics}RootUnorderedAccessView(). 2017-08-09 18:44:16 +02:00
Józef Kucia
2665cbe522 libs/vkd3d: Duplicate Vulkan descriptors for SRVs and UAVs.
Vulkan has different descriptor types for buffers and textures.
Therefore, we do not know the exact Vulkan descriptor type for D3D12 SRV
and UAV descriptors up front. This information can be extracted from
shaders when creating PSOs but creating incompatible Vulkan descriptor
set layouts for PSOs with the same root signature would introduce a lot
of complexity.

In order to preserve compatibility between resource bindings for PSOs
with the same root signature we duplicate Vulkan descriptors for SRVs
and UAVs (a buffer view and an image view descriptor). This strategy may
be reasonable for small root signatures.
2017-08-08 17:09:35 +02:00
Józef Kucia
1c69c504f6 libs/vkd3d: Mark d3d12_command_list_SetDescriptorHeaps() as implemented. 2017-08-04 17:06:33 +02:00
Józef Kucia
074513dc4d libs/vkd3d: Add support for sampler descriptors in root descriptor tables. 2017-08-04 17:06:33 +02:00
Józef Kucia
0a0e29fbbf libs/vkd3d: Add support for multiple descriptors in root descriptor tables. 2017-08-04 17:06:33 +02:00
Józef Kucia
fa0a2eab21 libs/vkd3d: Store Vulkan bindings for descriptor table root parameters in root signature. 2017-08-04 17:06:33 +02:00
Józef Kucia
db3a112fb5 libs/vkd3d: Add support for CBV descriptors in d3d12_command_list_set_descriptor_table(). 2017-08-04 17:06:33 +02:00
Józef Kucia
573460550e libs/vkd3d: Do not assume CBV root parameter index is equal to Vulkan descriptor binding. 2017-08-02 15:30:15 +02:00
Józef Kucia
fb4e86b292 libs/vkd3d: Implement d3d12_command_list_SetComputeRootConstantBufferView(). 2017-08-02 15:30:15 +02:00
Sven Hesse
1decba1a99 libs/vkd3d: Add block size information to the texture format array. 2017-08-02 14:03:39 +02:00