Commit Graph

123 Commits

Author SHA1 Message Date
Józef Kucia
f5515c46df libs/vkd3d: Create default sampler for each root signature.
We need a sampler for SpvOpImageFetch aka texelFetch().
2017-08-16 13:11:52 +02:00
Józef Kucia
e3d6bac31b libs/vkd3d-shader: Introduce vkd3d_shader_interface structure. 2017-08-16 13:11:52 +02:00
Józef Kucia
6c237a91f6 include: Add IDXGIFactory4. 2017-08-15 12:24:44 +02:00
Sven Hesse
c1c7163216 include: Add D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT. 2017-08-09 14:48:14 +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
0859b94833 libs/vkd3d: Implement d3d12_device_CreateConstantBufferView(). 2017-08-04 17:06:33 +02:00
Józef Kucia
d75966ab9e libs/vkd3d: Assign non-overlapping push constant ranges for root constants. 2017-08-01 10:51:45 +02:00
Józef Kucia
92fcb9ffa2 libs/vkd3d-shader: Add support for push constants. 2017-07-27 15:24:38 +02:00
Józef Kucia
edd1e9602d libs/vkd3d-shader: Implement arbitrary mappings from D3D shader register to Vulkan descriptors.
An arbitrary mapping can be passed to vkd3d_shader_compile_dxbc().
2017-07-26 13:45:25 +02:00
Henri Verbeet
e9fe4da01e include: Respect NOMINMAX. 2017-07-18 19:15:00 +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
8a455b6043 include: Add texture filtering macros. 2017-07-12 13:10:44 +02:00
Józef Kucia
2bbba87ea0 include: Avoid redefining DXGI_ERROR constants.
Fixes build for crosstests.

MinGW-w64 defines DXGI_ERRORs in winerror.h.
2017-07-11 17:23:02 +02:00
Henri Verbeet
893d2e8444 include: Add D3D12_FEATURE_DATA_FORMAT_SUPPORT. 2017-07-11 13:52:54 +02:00
Henri Verbeet
fdd2b456fb include: Add D3D12_FEATURE_DATA_D3D12_OPTIONS. 2017-07-11 13:51:13 +02:00
Henri Verbeet
728f4e6686 include: Add missing D3D12_FILTER enum elements. 2017-07-11 13:50:59 +02:00
Henri Verbeet
45b0fa3346 include: Add the ID3D12QueryHeap interface. 2017-07-11 13:19:41 +02:00
Henri Verbeet
2ebba52bef include: Provide enum flag operators for D3D12_DSV_FLAGS. 2017-07-11 13:13:59 +02:00
Henri Verbeet
f68c1b13be include: Add texture dimension constants. 2017-07-11 12:24:25 +02:00
Henri Verbeet
c633a87dba include: Add missing DXGI formats. 2017-07-11 12:24:25 +02:00
Henri Verbeet
e732713f10 include: Add D3D12_DISPATCH_ARGUMENTS. 2017-07-11 12:24:25 +02:00
Henri Verbeet
634a5aa19f include: Add D3D12_DRAW_INDEXED_ARGUMENTS. 2017-07-11 12:24:21 +02:00
Henri Verbeet
12831d2125 include: Add D3D12_DRAW_ARGUMENTS. 2017-07-11 12:21:19 +02:00
Henri Verbeet
941eefb1c0 include: Provide enum flag operators for D3D12_CLEAR_FLAGS. 2017-07-11 12:21:19 +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
Henri Verbeet
21d853ac3b include: Add D3D12_SHADER_COMPONENT_MAPPING. 2017-07-10 16:57:10 +02:00
Henri Verbeet
dec9b864ef include: Provide enum flag operators for D3D12_RESOURCE_STATES. 2017-07-10 16:57:10 +02:00
Henri Verbeet
7a203b0e5f include: Provide enum flag operators for D3D12_RESOURCE_FLAGS. 2017-07-10 16:57:06 +02:00
Henri Verbeet
7bdc8c3b25 include: Introduce dxgiformat.idl. 2017-07-10 16:32:01 +02:00
Józef Kucia
8f6af1125d libs/vkd3d-shader: Get rid of VKD3D_SHADER_FLIP_Y compiler option.
We use negative viewport height to flip Y.
2017-06-27 22:21:43 +02:00
Józef Kucia
0afe0032b0 libs/vkd3d-shader: Add VKD3D_SHADER_STRIP_DEBUG compiler option. 2017-06-27 22:21:43 +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
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
eff8428c71 libs/vkd3d-common: Move vkd3d_array_reserve() from libvkd3d. 2017-06-19 18:05:53 +02:00
Józef Kucia
97c7bc0a18 libs/vkd3d-common: Provide access to current debug level. 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
7be0b64a0f libs/vkd3d-common: Add debugstr_a() function. 2017-06-16 22:38:21 +02:00
Józef Kucia
93458c8933 libs/vkd3d-shader: Add library. 2017-06-16 22:38:21 +02:00
Józef Kucia
995720f5f5 include: Add align() helper function. 2017-06-16 22:38:21 +02:00
Józef Kucia
ba713c9b37 include: Drop wine prefix from red-black tree functions. 2017-06-16 22:38:21 +02:00
Józef Kucia
69e278e754 include: Import red-black tree implementation from Wine. 2017-06-16 22:38:21 +02:00
Józef Kucia
956c8b03cf include: Import linked list implementation from Wine. 2017-06-16 22:38:21 +02:00