Commit Graph

407 Commits

Author SHA1 Message Date
Conor McCarthy
18f73c1c4d vkd3d: Handle D3D12_FEATURE_D3D12_OPTIONS9 in CheckFeatureSupport(). 2024-02-07 22:59:32 +01:00
Conor McCarthy
8ea67b0ac6 vkd3d: Handle D3D12_FEATURE_D3D12_OPTIONS8 in CheckFeatureSupport(). 2024-02-07 22:59:32 +01:00
Conor McCarthy
5fd3076c67 vkd3d: Handle D3D12_FEATURE_D3D12_OPTIONS7 in CheckFeatureSupport(). 2024-02-07 22:59:31 +01:00
Conor McCarthy
db4a98c0d2 vkd3d: Handle D3D12_FEATURE_D3D12_OPTIONS6 in CheckFeatureSupport(). 2024-02-07 22:59:31 +01:00
Henri Verbeet
06ddb10c40 vkd3d: Introduce a debug helper for CPU descriptor handles. 2024-02-01 22:25:36 +01:00
Jacek Caban
2ae9f18a3a vkd3d: Use uint64_t for the size in vkd3d_gpu_va_allocator_allocate.
Avoids value truncation in 32-bit builds.
2024-02-01 22:25:20 +01:00
Conor McCarthy
eae4b7b4a2 vkd3d: Implement GetResourceAllocationInfo1(). 2024-02-01 22:25:13 +01:00
Conor McCarthy
7e84421b9c vkd3d: Support multiple descriptions in GetResourceAllocationInfo(). 2024-02-01 22:25:11 +01:00
Conor McCarthy
92e19a7da3 vkd3d: Add ID3D12Device7 interface stubs. 2024-02-01 22:25:10 +01:00
Conor McCarthy
76fbbe980a vkd3d: Add ID3D12Device6 interface stub. 2024-02-01 22:25:10 +01:00
Henri Verbeet
6dea3d08b1 vkd3d: Use debugstr_hresult() in d3d12_device_mark_as_removed(). 2024-02-01 00:08:39 +01:00
Henri Verbeet
4fd4ecc020 vkd3d: Use vkd3d_atomic_decrement_u32() in d3d12_device_Release(). 2024-01-29 22:33:40 +01:00
Henri Verbeet
7d7833f3c0 vkd3d: Use vkd3d_atomic_increment_u32() in d3d12_device_AddRef(). 2024-01-29 22:33:40 +01:00
Henri Verbeet
f61891954e vkd3d: Use vkd3d_atomic_decrement_u32() in vkd3d_instance_decref(). 2024-01-29 22:33:40 +01:00
Henri Verbeet
042e269791 vkd3d: Use vkd3d_atomic_increment_u32() in vkd3d_instance_incref(). 2024-01-29 22:33:40 +01:00
Henri Verbeet
d4b329e628 vkd3d: Use debugstr_hresult() in vkd3d_join_thread(). 2024-01-23 20:27:28 +01:00
Henri Verbeet
e965701776 vkd3d: Use debugstr_hresult() in d3d12_device_init(). 2024-01-23 20:27:28 +01:00
Henri Verbeet
8dc1239e14 vkd3d: Use debugstr_hresult() in vkd3d_create_vk_device(). 2024-01-23 20:27:28 +01:00
Henri Verbeet
af160ef0c4 vkd3d: Use debugstr_hresult() in vkd3d_instance_init(). 2024-01-23 20:27:28 +01:00
Giovanni Mascellani
6ac525d6c3 vkd3d-shader/spirv: Use capability ShaderViewportIndexLayerEXT for decoration Layer.
Capability Geometry allows to use the Layer builtin in geometry and pixel
shaders. For vertex and domain shaders ShaderLayer should be used, but it's only
available starting from SPIR-V 1.5. ShaderViewportIndexLayerEXT can be used
instead with extension SPV_EXT_shader_viewport_index_layer.
2024-01-22 22:19:09 +01:00
Henri Verbeet
bf0fda7812 vkd3d: Trace GetLastError() results with %lu.
These are DWORDs, but this is all Windows code, so we can just use %lu.
2024-01-11 23:05:42 +01:00
Conor McCarthy
b0d1fb7d98 vkd3d: Use mutable descriptors if available.
The mutable descriptor type allows six descriptor sets to be replaced
with one set for CBV/SRV/UAV heaps.
2024-01-09 22:59:46 +01:00
Conor McCarthy
a2741babd9 vkd3d: Rename the device mutex to pipeline_cache_mutex.
It is used only for pipeline and render pass caching, and renaming it
helps prevent inappropriate or erroneous use.
2023-12-14 21:00:30 +01:00
Conor McCarthy
37e76618ca vkd3d: Write Vulkan descriptors in a worker thread.
Raises framerate by 5-10% in games which write thousands of descriptors
per frame, e.g. Horizon Zero Dawn.

The worker thread is a generic device worker which can also be used for
other purposes if the need arises.
2023-12-14 21:00:28 +01:00
Stefan Dösinger
2935ac5c7e vkd3d: Forward MakeResident to EnqueueMakeResident. 2023-11-28 00:09:09 +01:00