Hans-Kristian Arntzen
43bf0ed8c1
vkd3d: Ensure SAMPLED | COLOR_ATTACHMENT for R8_TYPELESS.
...
Needed for stencil -> color copies potentially.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-05 00:11:10 +02:00
Hans-Kristian Arntzen
4f0872152a
meta: Add fs_copy_uint path.
...
For stencil -> color copies.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-05 00:11:10 +02:00
Hans-Kristian Arntzen
ef5ad082a0
vkd3d: More precise logging for fallback copy fixmes.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-05 00:11:10 +02:00
Hans-Kristian Arntzen
0e93af9700
vkd3d: Handle multiple planes in subresource conversion for copies.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-05-05 00:11:10 +02:00
Georg Lehmann
a411256c7f
vkd3d: Enable and require shaderDrawParameters.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-04-29 06:48:37 +01:00
Georg Lehmann
b858f8a478
vkd3d: Don't error out if vkGetPhysicalDeviceFragmentShadingRatesKHR isn't found.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-04-24 18:23:46 +01:00
Hans-Kristian Arntzen
99a180f7a1
vkd3d-utils: Fix .def version.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-22 15:30:58 +01:00
Hans-Kristian Arntzen
be1b941e06
vkd3d: Workaround buggy NV driver in sparse update.
...
test_update_tile_mappings fails if we don't do this.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-21 16:29:05 +02:00
Joshua Ashton
3d0913dc19
d3d12: Initialize optional extensions
...
This was missed and somehow magically worked fine when running the test suite for me.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-21 00:48:43 +02:00
Joshua Ashton
3118696706
vkd3d-utils: Bump SONAME version to 3.0.0
...
We made breaking ABI changes.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
911a202bd1
vkd3d: Bump SONAME version to 3.0.0
...
We made breaking ABI changes.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
a3ad7cae90
vkd3d-shader: Remove type/next from interface structures
...
This was never really used for anything useful.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
0c8349cb8e
vkd3d-shader: Remove vkd3d_shader_domain_shader_compile_arguments
...
This is never used by anything, and all the info is in the shader anyway.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
220e1146ee
vkd3d-shader: Make vkd3d_shader_transform_feedback_info a member
...
Moves it into vkd3d_shader_interface_info, this doesn't need to be
a pNext.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
3e4a8b1504
vkd3d: Remove type/next from vkd3d device/instance structures
...
There's really no reason to overcomplicate adding optional extensions this way.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
bd988f2b74
vkd3d: Remove vkd3d_optional_device_extensions_info
...
Roll this into vkd3d_device_create_info, no need for this to be a pNext thing.
Additionally, fix some memory leaks on device creation failure.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Joshua Ashton
59148c1932
vkd3d: Remove vkd3d_optional_instance_extensions_info
...
Roll this into vkd3d_instance_create_info, no need for this to be a pNext thing.
Additionally, fix some memory leaks on instance creation failure.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-20 18:25:41 +02:00
Philip Rebohle
f06f94bfb4
vkd3d: Enable multi_queue by default.
...
And replace option with a single_queue flag to do the opposite.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-19 16:40:49 +02:00
Joshua Ashton
07e801192f
vkd3d-shader: Resolve arguments to variable before passing to epilogue
...
Otherwise we pass in a pointer which is bad, or a local value which is also illegal for some reason.
It has to be a "memory object declaration".
Found via. spirv-val
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-19 13:19:44 +02:00
Joshua Ashton
4470ec63cc
vkd3d-shader: Don't emit builtin clip/cull arrays for hull shaders
...
There are no output built-ins here, just per-vertex stuff passed directly to DS to deal with there.
Closes : #227
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-19 13:19:44 +02:00
Joshua Ashton
94a9719557
vkd3d-shader: Rename vkd3d_dxbc_compiler_emit_shader_signature_outputs to vkd3d_dxbc_compiler_emit_clip_cull_outputs
...
This only ever emits these.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-19 13:19:44 +02:00
Joshua Ashton
000407d74c
vkd3d-shader: Enable Clip/Cull distance capabilities
...
Found via. spirv-val
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-19 13:19:44 +02:00
Hans-Kristian Arntzen
c7eb6fdf61
vkd3d: Add some tracing to help narrow down compiler crashes.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-15 16:24:05 +02:00
Hans-Kristian Arntzen
6292078433
vkd3d-shader: Return INVALID_ARGUMENT instead of SHADER.
...
For invalid bindings, we expect E_INVALIDARG in D3D12.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-15 16:24:05 +02:00
Hans-Kristian Arntzen
744497274c
vkd3d-shader: Verify that we compile expected shader stage.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-15 16:24:05 +02:00
Hans-Kristian Arntzen
8f17fdd1fa
vkd3d: Don't leak pipeline cache if we fail compile.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-15 16:24:05 +02:00
Hans-Kristian Arntzen
e7b6cf4089
vkd3d-shader: Report error if binding is not found in root signature.
...
Error out early.
Fixes some crashes when we keep going after having seen completely
broken bindings.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-15 16:24:05 +02:00
Philip Rebohle
62cbf3d78a
vkd3d: Remove unused unsafe_impl_from_ID3D12CommandAllocator.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-14 16:24:55 +02:00
Philip Rebohle
4f9ca6c3df
vkd3d: Create bundles and bundle allocators as necessary.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-14 16:24:55 +02:00
Philip Rebohle
1bbbabcb94
vkd3d: Implement ExecuteBundle.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-14 16:24:55 +02:00
Philip Rebohle
728ce6c370
vkd3d: Validate command list type in ExecuteCommandLists.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-14 16:24:55 +02:00
Philip Rebohle
1990270bbb
vkd3d: Implement CreateCommandList on top of CreateCommandList1.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-14 16:24:55 +02:00
Philip Rebohle
2ca62ecd12
vkd3d: Add bundle allocator and command list implementation.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-14 16:24:55 +02:00
Joshua Ashton
2860b0a548
vkd3d: Enable force_tgsm_barriers for F1 2020
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
Closes : #611
2021-04-12 16:29:57 +02:00
Joshua Ashton
043fd304f8
vkd3d-shader: Add force_tgsm_barriers config flag
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 16:29:57 +02:00
Joshua Ashton
7cfe17d2f5
vkd3d-shader: Passthrough vkd3d_config_flags
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 16:29:57 +02:00
Joshua Ashton
41df41305e
include: Move vkd3d_config_flags to public header
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 16:29:57 +02:00
Joshua Ashton
5978f5958e
vkd3d: Expose TIER_2 Variable Rate Shading
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 13:22:01 +02:00
Joshua Ashton
9fb624a429
vkd3d: Implement RSSetShadingRateImage
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 13:22:01 +02:00
Joshua Ashton
5d17f71441
vkd3d: Handle usage and implicit views for VRS capable resources
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 13:22:01 +02:00
Joshua Ashton
135c7332e4
vkd3d: Implement D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 13:22:01 +02:00
Joshua Ashton
601357c7c5
vkd3d: Implement a static pipeline variant system
...
Needed so we can switch between having a VRS and non-VRS attachment on the fly.
Extensible enough for this to work for other things down the line also.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-04-12 13:22:01 +02:00
Philip Rebohle
4e777b9182
vkd3d: Use depth attachment when depth bounds test is enabled.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-04-12 11:23:51 +02:00
Hans-Kristian Arntzen
7dc2a5cad7
vkd3d: Enable VK_KHR_sampler_mirror_clamp_to_edge.
...
CP77 requires it now.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-04-07 21:57:50 +02:00
Philip Rebohle
2f1b23ece6
vkd3d: Enable conservative rasterization tier 3.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-03-25 18:00:59 +01:00
Philip Rebohle
6476fabb0b
vkd3d-shader: Implement support for SV_InnerCoverage.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-03-25 18:00:59 +01:00
Philip Rebohle
698279ec90
vkd3d: Enable conservative rasterization state as requested.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-03-25 18:00:59 +01:00
Philip Rebohle
8a61128152
vkd3d: Enable VK_EXT_conservative_rasterization if available.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-03-25 18:00:59 +01:00
Philip Rebohle
fdf4df18a4
vkd3d: Add Feature Level 12_2 detection.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-03-25 18:00:59 +01:00
Hans-Kristian Arntzen
2f60a3bf66
vkd3d: Fix broken debug_vk_memory_{property,heap}_flags.
...
C is fun, yo. Returned data from dead stack variable, also triggered
overflow in some cases.
Uncalled in release mode, but can crash debug builds.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-03-25 17:58:18 +01:00