1237 Commits

Author SHA1 Message Date
Józef Kucia
d39d0e4c9f libs/vkd3d: Fix memory leak in d3d12_root_signature_init(). 2017-07-25 18:47:42 +02:00
Sven Hesse
3328be8c87 libs/vkd3d: Unroll descriptor tables and fill in push constants 2017-07-25 17:41:58 +02:00
Józef Kucia
bb18c171bf libs/vkd3d: Implement d3d12_command_list_Dispatch(). 2017-07-25 12:50:14 +02:00
Józef Kucia
47cb8ba80f libs/vkd3d: Bind compute pipeline. 2017-07-25 12:50:14 +02:00
Józef Kucia
982075db60 libs/vkd3d: Partially implement d3d12_command_list_SetComputeRootDescriptorTable(). 2017-07-25 12:50:14 +02:00
Józef Kucia
5ac8dbfc64 libs/vkd3d: Implement d3d12_device_CreateUnorderedAccessView(). 2017-07-25 12:50:14 +02:00
Józef Kucia
73cdf0164a libs/vkd3d: Implement d3d12_command_list_SetComputeRootSignature(). 2017-07-25 12:50:14 +02:00
Józef Kucia
3f4ef37b88 libs/vkd3d: Introduce d3d12_command_list_allocate_descriptor_set() helper function. 2017-07-25 12:50:14 +02:00
Józef Kucia
055b27da12 libs/vkd3d: Rename current_descriptor_set to graphics_descriptor_set. 2017-07-25 12:50:14 +02:00
Józef Kucia
d0a4238e39 libs/vkd3d: Allocate Vulkan descriptors for UAVs. 2017-07-25 12:50:14 +02:00
Józef Kucia
bd437d547f libs/vkd3d: Add support for compute command allocators. 2017-07-25 11:22:34 +02:00
Józef Kucia
00606b7dff libs/vkd3d: Fix logic for choosing compute-only queue family index. 2017-07-21 22:29:12 +02:00
Józef Kucia
d35ffe53ad libs/vkd3d: Initialize device->compute_queue_family_index.
Fixes dadce84a4bd11af7b2300b8ff00d641e9847d089.
2017-07-21 22:29:12 +02:00
Sven Hesse
dadce84a4b libs/vkd3d: Create a compute queue family. 2017-07-21 15:24:57 +02:00
Józef Kucia
d1de972430 libs/vkd3d: Allocate Vulkan descriptors for samplers. 2017-07-17 16:25:29 +02:00
Józef Kucia
593a13402d libs/vkd3d: Add support for static samplers.
We still do not implement any reasonable mapping between D3D registers
and Vulkan bindings.
2017-07-17 16:25:29 +02:00
Józef Kucia
02506b24c4 libs/vkd3d: Partially implement d3d12_command_list_SetGraphicsRootDescriptorTable().
A very naive implementation. Mainly to unblock some shader translation
work.
2017-07-17 16:25:29 +02:00
Józef Kucia
733775fbad libs/vkd3d: Implement d3d12_descriptor_heap_GetGPUDescriptorHandleForHeapStart(). 2017-07-17 16:25:29 +02:00
Józef Kucia
091ac41f79 libs/vkd3d: Partially handle descriptor table root parameters. 2017-07-17 16:25:29 +02:00
Józef Kucia
2dfbc88a89 libs/vkd3d: Implement copying from buffers to images. 2017-07-14 13:44:35 +02:00
Józef Kucia
1c79831873 libs/vkd3d: Implement d3d12_device_CreateShaderResourceView(). 2017-07-14 13:44:35 +02:00
Józef Kucia
8bb54c17f3 libs/vkd3d: Simplify d3d12_resource_destroy(). 2017-07-14 13:44:35 +02:00
Józef Kucia
f4f803c7bb libs/vkd3d: Add initial implementation for d3d12_device_GetCopyableFootprints(). 2017-07-13 11:56:30 +02:00
Józef Kucia
f3d297574a libs/vkd3d: Implement d3d12_device_CreateSampler(). 2017-07-12 13:10:44 +02:00
Henri Verbeet
d61b6a3545 include: Add the missing "values" parameter to ID3D12GraphicsCommandList::ClearUnorderedAccessViewFloat(). 2017-07-11 12:21:15 +02:00
Henri Verbeet
99d2ba411e include: Add the missing ClearUnorderedAccessViewUint() method to the ID3D12GraphicsCommandList interface. 2017-07-11 12:21:11 +02:00
Józef Kucia
3f546c8782 libs/vkd3d: Add DXGI_FORMAT_R32_UINT. 2017-07-10 15:33:34 +02:00
Józef Kucia
3f03cd1ec8 libs/vkd3d-shader: Implement root signature parsing. 2017-06-27 13:16:47 +02:00
Józef Kucia
d220ae4bfb libs/vkd3d: Add ID3D12RootSignatureDeserializer interface stub. 2017-06-27 13:16:47 +02:00
Józef Kucia
be9849ace4 libs/vkd3d: Avoid race condition when destroying fences. 2017-06-26 17:03:31 +02:00
Józef Kucia
ae8d869013 libs/vkd3d: Use VK_NULL_HANDLE instead of NULL.
Fixes a compiler warning for 32-bit builds.
2017-06-26 17:03:31 +02:00
Józef Kucia
9a59184e9f libs/vkd3d: Reset current root signature in d3d12_command_list_Reset(). 2017-06-23 22:24:33 +02:00
Józef Kucia
532da7d4e1 libs/vkd3d: Clear current descriptor set when descriptor pool is destroyed. 2017-06-23 22:24:33 +02:00
Józef Kucia
fa52702774 libs/vkd3d: Always update current root signature in d3d12_command_list_SetGraphicsRootSignature(). 2017-06-23 22:24:33 +02:00
Józef Kucia
c0b5cf3df6 libs/vkd3d: Avoid updating descriptor sets bound to recording command buffer.
Fixes GPU memory page faults in gears demo on Nvidia.

The Vulkan spec says:

  "The descriptor set contents bound by a call to
  vkCmdBindDescriptorSets may be consumed during host execution of the
  command, or during shader execution of the resulting draws, or any
  time in between. Thus, the contents must not be altered (overwritten
  by an update command, or freed) between when the command is recorded
  and when the command completes executing on the queue."
2017-06-23 22:24:33 +02:00
Józef Kucia
4e5fcb5141 libs/vkd3d: Use negative viewport height to flip along y-axis.
Requires VK_KHR_maintenance1.
2017-06-21 22:00:19 +02:00
Józef Kucia
d515e3d047 libs/vkd3d: Require VK_KHR_maintenance1 device extension. 2017-06-21 22:00:19 +02:00
Józef Kucia
9948abda96 libs/vkd3d: Flip SV_Position.y in last vertex processing shader stage.
The handwritten GLSL shaders do this.
2017-06-21 12:22:20 +02:00
Józef Kucia
c270d9a859 libs/vkd3d: Accept DXBC shaders. 2017-06-19 19:49:11 +02:00
Józef Kucia
6f6d5c7850 libs/vkd3d: Use depth aspect mask for DXGI_FORMAT_D16_UNORM. 2017-06-19 18:19:19 +02:00
Józef Kucia
eff8428c71 libs/vkd3d-common: Move vkd3d_array_reserve() from libvkd3d. 2017-06-19 18:05:53 +02:00
Henri Verbeet
5808c280f7 libs/vkd3d: Add DXGI_FORMAT_D16_UNORM. 2017-06-19 14:44:48 +02:00
Henri Verbeet
fc67a3b7fa libs/vkd3d: Add DXGI_FORMAT_R8G8B8A8_UNORM_SRGB. 2017-06-19 14:44:41 +02:00
Henri Verbeet
d029dc995c libs/vkd3d: Add DXGI_FORMAT_R8_UINT. 2017-06-19 14:44:33 +02:00
Henri Verbeet
79d731de8a libs/vkd3d: Add DXGI_FORMAT_R16_FLOAT. 2017-06-19 14:44:19 +02:00
Henri Verbeet
70dbeed14c libs/vkd3d: Add DXGI_FORMAT_R8_UNORM. 2017-06-19 14:44:07 +02:00
Henri Verbeet
00f514cf1c libs/vkd3d: Add DXGI_FORMAT_R16_UNORM. 2017-06-19 14:43:55 +02:00
Henri Verbeet
07f12c2947 libs/vkd3d: Add DXGI_FORMAT_R16G16B16A16_FLOAT. 2017-06-19 14:43:45 +02:00
Józef Kucia
ec4ab656df libs/vkd3d: Add trailing newline to WARN() message in d3d12_command_list_begin_render_pass(). 2017-06-16 23:29:37 +02:00
Józef Kucia
84889646f6 Update license to LGPL v2.1. 2017-06-16 22:11:21 +02:00