Hans-Kristian Arntzen
60ac9b4d51
Mark version 2.0.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-06 17:13:19 +01:00
Philip Rebohle
432ba00e3c
vkd3d: Only care about DSV mismatch if pipeline actually uses it.
...
Avoids some unnecessary late compiles in Monster Hunter World.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-11-06 16:36:27 +01:00
Philip Rebohle
58548a3db2
vkd3d: Fix image memory barrier after fragment shader-based copy.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-11-06 16:07:47 +01:00
Philip Rebohle
408fed0910
vkd3d: Fix root descriptor indexing.
...
The packed descriptor index is no longer needed, and causes issues in
case a game sets a root signature, then binds a root descriptor, and
then sets a different root signature which maps the given root parameter
index to a different descriptor since we may now read undefined data
when updating push descriptors.
Fixes #366 .
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-11-06 16:07:47 +01:00
Hans-Kristian Arntzen
6b37d36de4
meta: Update COPYING year/name.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-06 16:03:39 +01:00
Hans-Kristian Arntzen
5a666c5f70
meta: Take a pass over the README.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-06 16:03:39 +01:00
Hans-Kristian Arntzen
210ce3b1e2
meta: Update AUTHORS.
...
Add the main contributors to vkd3d-proton.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-06 16:03:39 +01:00
Hans-Kristian Arntzen
9425dceace
meta: Remove old vkd3d 1.1 ANNOUNCE.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-06 16:03:39 +01:00
Joshua Ashton
c5e3779257
build: Replace build_linux32 with env vars
...
This is much distro-agnostic.
(Only sane distros [Arch] use /usr/lib32 and not /usr/lib/i386-linux-gnu)
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-05 16:46:22 +00:00
Juuso Alasuutari
6bfead391d
build: fix build_arch() in package-release.sh so that quoted input arguments behave normally
...
Signed-off-by: Juuso Alasuutari <juuso.alasuutari@gmail.com>
2020-11-05 16:35:40 +00:00
Joshua Ashton
8dea487861
meta: Add missing newlines to end of files
...
Remove trailing whitespace also
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-05 17:16:57 +01:00
Joshua Ashton
a18da4560d
build: Fix pkgconfig and install target
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-05 17:16:57 +01:00
Hans-Kristian Arntzen
490d803581
vkd3d-shader: Add OpSource support to DXIL.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-05 15:57:16 +01:00
Hans-Kristian Arntzen
7e14f80e2a
vkd3d-shader: Emit OpSource with DXBC hash.
...
Makes it possible to backtrace which shader we're working with
when we get raw SPIR-V from unrelated sources (Fossilize or RADV crash
dumps for example).
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-05 15:57:16 +01:00
Philip Rebohle
a8f9cc15b3
vkd3d: Create root signature from shader blobs as necessary.
...
MSDN states that root signatures across multiple stages in a graphics
pipeline must be identical, but the D3D12 runtime does not validate
this and mixing different root signatures results in undefined
behaviour, so just taking this from the VS should be safe.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-11-05 15:21:16 +01:00
Philip Rebohle
1d823f8659
vkd3d: Do not store root signature in graphics pipeline state.
...
We only need to know the pipeline layout for pipeline variant
creation. We are not holding a strong reference to the root
signature anyway, which may be problematic, but this should
not introduce a regression.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-11-05 15:21:16 +01:00
Philip Rebohle
a1198f2af8
tésts: Add test for creating pipeline states with a null root signature.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-11-05 15:21:16 +01:00
Georg Lehmann
8c93ebc83a
build: Fix quotes in package-release.sh.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2020-11-05 11:33:37 +01:00
Georg Lehmann
98f005116b
build: Replace enable_standalone_d3d12 with tristate enable_d3d12.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2020-11-04 23:38:02 +00:00
Hans-Kristian Arntzen
f37254e6b6
tests: Add test for many typed buffers.
...
Verifies that can we can spam unique typed views without problems ...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
e4600edb03
vkd3d: Always enable typed offset buffer.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
f1991d4458
vkd3d: Init descriptor heap offset buffer if we're only using typed.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
670fba6c6f
vkd3d: Enable typed offset buffer in root signature.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
320b643c77
vkd3d-shader: Add typed offset to DXIL.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
bcd03de770
vkd3d-shader: Implement typed buffer offset.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
1c14fc9334
vkd3d: Write typed buffer offsets to buffer.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
d23c7200a2
vkd3d: Always copy offset buffer descriptor info.
...
Offset buffer state might be the only relevant difference between two
descriptors. We won't need to copy descriptors, but the offsets must be.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
572ea9da7f
common: Enable popcount and clz paths based on compiler.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
5832d2fbdd
vkd3d: Refactor out typed buffer view creation.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
749ac13f5e
vkd3d: Rename vkd3d_buffer_view_get_bound_range.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
f0754c4460
vkd3d: Apply offset to typed UAV as well in ClearUAV.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
b30d8788bf
vkd3d: Rename SSBO_OFFSET descriptor flag to BUFFER_OFFSET.
...
It is used for typed as well.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
5d88e4d435
vkd3d: Add a definition for typed offset buffer as well.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
2158ed716b
vkd3d-shader: Add a TYPED_OFFSET_BUFFER to shader interface as well.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
fdd16168be
vkd3d: Rename SSBO_OFFSET_BUFFER to a more generic offset buffer.
...
We will use it for typed buffers as well.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
5674ced973
vkd3d: Report if view maps have intense pressure.
...
This will lead to a crash if it goes too far.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Hans-Kristian Arntzen
e31eae075b
vkd3d: Fix deadlock after failing to create view map entry.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2020-11-04 19:05:28 +01:00
Joshua Ashton
5c1b40b856
vkd3d: Init hashmap in vkd3d_create_image_resource
...
Closes : #353
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-03 09:39:35 +01:00
Joshua Ashton
f50c897868
build: Merge vkd3d_headers into vkd3d_common
...
Fixes MSVC build.
Closes : #343
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-03 09:37:24 +01:00
Joshua Ashton
43d94a9b2f
vkd3d-compiler: Define debug channel
...
We need this if we include vkd3d_shader since the memory include header got fixed.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-03 09:35:44 +01:00
Joshua Ashton
7325a49bd6
vkd3d: Include correct memory header in hashmap
...
Fixes warnings about implicit declaration of these functions
when building demos/programs which could be very bad on x64 if used.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2020-11-03 09:35:44 +01:00
Philip Rebohle
624f96e820
tests: Add test for RTV descriptor copies.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
13a95bb7bc
tests: Add test for NULL RTV creation.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
601abe7408
vkd3d: Reset RTV/DSV descriptors when creating NULL descriptor.
...
Otherwise, we may run into issues with an app accessing stale resource
or pointers. NULL descriptors are handled in OMSetRenderTargets.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
f29b397a9f
vkd3d: Implement RTV/DSV descriptor copies.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
f3c35b2992
vkd3d: Remove unused descriptor magic from RTV/DSV descriptors.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
211704be3f
vkd3d: Use per-resource view maps to create render target views.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
109c881ccb
vkd3d: Unify RTV and DSV descriptor types.
...
The struct definitions were identical anyway, and unifying
these will prevent unnecessary code duplication.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 17:02:17 +01:00
Philip Rebohle
bd1de243d3
vkd3d: Don't skip indirect dispatches with count buffer.
...
The only currently known use case for this requires us to actually
perform the dispatch operation. Executing more than one indirect
dispatch command is not meaningful, however there might be
differences in behaviour in case the indirect count is zero.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 16:56:18 +01:00
Philip Rebohle
c50e529be0
vkd3d: Fix descriptor table mask when populating inline uniform block data.
...
This logic has to be the same as in d3d12_command_list_update_descriptor_table_offsets,
since not all active descriptor tables are necessarily used by the root signature.
Fixes an assert in the StarsX IrradianceMap demo (Github issue #347 ).
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2020-10-30 16:56:18 +01:00