Commit Graph
149 Commits
Author SHA1 Message Date
baldurk 8e4b44aed7 Add test of integer offsets on texture sample for D3D shader debug 2022-06-30 13:51:26 +01:00
baldurk 1928315de5 Fix a copy-paste error in D3D12_Compute_Only test 2022-06-24 13:34:46 +01:00
baldurk 7d9a1a05b8 Correctly handle programs that don't create graphics queues 2022-06-21 15:31:41 +01:00
baldurk 4a0bc691a7 Add test that solid/lit rendering works on points and lines 2022-06-17 17:27:30 +01:00
baldurk 71d7f000c4 Add test for D3D12 texture contents including with DENY_SHADER_RESOURCE 2022-06-17 17:27:30 +01:00
baldurk 04c62f9595 Add a test debugging shaders on D3D12 with banned flags in the root sig 2022-04-28 14:19:38 +01:00
baldurk 7066692262 Test that sampler heaps are represented in structured data properly
* This is a test of a specific case of lazy serialisation, but in particular
  D3D12 descriptors do some aliasing tricks for types to compress the data, so
  repeated serialisation needs to be safe.
2022-04-28 13:39:37 +01:00
Benoit Dumesnil 2ace1fe84d Add test of D3D12 bindless feedback for shadermodel 6.6. 2022-03-21 11:30:47 +00:00
Benoit Dumesnil e47450a43b Fix test of D3D12 bindless feedback.
Fix a typo in a comment in D3D12_Descriptor_Indexing.py.
Fix UAV using a typed buffer view instead of a structured buffer view.
Fix SetDescriptorHeaps being called before ClearUnorderedAccessViewUint
2022-03-21 11:30:47 +00:00
baldurk fcdea67879 Update copyright years to 2022 2022-02-17 17:38:32 +00:00
baldurk d0563ebaea Fix array overrun in test 2022-01-10 12:51:37 +00:00
baldurk 22d4dc4574 Don't create temporary device if D3D12 is not supported 2021-11-26 10:59:22 +00:00
baldurk 861f55b467 Test picking empty draws in mesh view 2021-11-19 12:26:06 +00:00
baldurk 8f51857c69 Test D3D12 placed resources keeping a reference on their heap 2021-11-19 11:22:53 +00:00
baldurk ff1fc1c20f Test handling of residency refcounting and placed resources on D3D12 2021-11-15 15:07:56 +00:00
baldurk 4d906c5007 Check that multiple D3D12 devices with different resources doesn't break 2021-11-11 15:54:47 +00:00
baldurk 3cec544508 Patch quad overdraw shaders on D3D12 to follow rules. Closes #2356
* This is a stupid requirement as the quad overdraw shader doesn't use any
  interpolators, but the D3D12 runtime complains and refuses to create a PSO
  unless the PS has a matching signature. This works as long as the position was
  the first output from the previous stage, but if it isn't the PSO fails to
  create.
* To fix this, we take the existing shader and patch it by grafting the output
  signature from the last stage over onto the input signature, and patching up
  where the position is.
2021-10-20 17:22:43 +01:00
baldurk a490606012 Handle D3D12 CreateConstantBufferView with a NULL desc 2021-07-28 14:01:13 +01:00
baldurk d2a03c6e06 Fix filling in missing components on typed buffer loads 2021-07-28 11:37:13 +01:00
baldurk a3a0aae660 Handle fixed index lookups in array resources 2021-07-19 16:51:50 +01:00
baldurk abe0787bb2 Add test of D3D12 bindless feedback 2021-07-15 16:41:23 +01:00
baldurk 81b4d3d804 Add public domain md5 library and implement modified DXBC container hash
* This allows us to disabled any requirement for "experimental shaders".
2021-07-07 19:18:32 +01:00
baldurk 23fe6ae67f Remove SM5.0 test for D3D12 AMD shader extensions
* This seems not to work and is not officially supported so there's little value
  in testing it.
2021-07-05 14:20:48 +01:00
baldurk 1ed4b561e6 Fix discard patterns to work correctly with multisampled UINT textures 2021-05-27 14:18:05 +01:00
baldurk 732ccb2d89 Fix D3D12_AMD_Shader_Extensions test for DXIL support
* We can't build with -O0, it has to be at least -O1 for DXIL. We also need -Ges
  / strictness on both builds.
2021-05-10 17:02:49 +01:00
baldurk f530392bc1 Check that destroying a command allocator mid-capture works OK 2021-04-30 16:58:55 +01:00
baldurk 2af11c5395 Add test of AMD extensions in D3D12 2021-04-30 16:41:17 +01:00
baldurk f085d1682f Test stream-created PSOs create correctly
* Where possible we test empty AS/MS to ensure they're ignored, though I don't
  run any windows versions that support this at the runtime level.
2021-04-30 12:41:22 +01:00
baldurk 9c29ae6393 Check for SRV/UAV typed access to 16-bit types
* This is possible on D3D11 but only with certain cap bits, it's simpler to test
  on D3D12 and the DXBC debugger will go through the same path for both.
2021-04-29 16:50:12 +01:00
baldurk 7ff6300843 Add test of D3D12 VRS features 2021-04-29 16:18:06 +01:00
baldurk 26aa09c665 Refactor D3D12 tests to check for options once in Prepare 2021-04-29 12:52:28 +01:00
baldurk aac9e762bc Test that empty execute indirects don't crash 2021-04-29 11:26:14 +01:00
baldurk db21020000 Ensure that overlay tests don't crash if multiple UAVs use register 0 2021-04-16 14:23:20 +01:00
baldurk 2720ff354a Test structured export/import of MSAA textures 2021-04-15 15:34:14 +01:00
baldurk 0513914c42 Test that correct root-constant entry is used for cbuffer values 2021-02-01 13:39:09 +00:00
baldurk 106999a43a Fix leak of descriptor memory during each capture on D3D12 2021-01-25 11:13:28 +00:00
baldurk 20d8ae2dcf Fix display of 3D texture slices when linear sampling
* When displaying mip 0 of a texture at less than 100% zoom we linear sampling,
  but we don't want to linear sample across slices. Adding a half pixel offset
  in z ensures we sample precisely on the slice itself.
2021-01-20 17:15:34 +00:00
baldurk 086b038d0b Add simple checks for large memory leaks
* Smaller memory leaks are harder to differentiate from noise, so we go for a
  large enough leak to be noticable over time (50,000 frames).
2021-01-19 15:22:12 +00:00
baldurk bb5834fd1c Add test of root signature ranges larger than the descriptor heap 2021-01-13 16:07:43 +00:00
baldurk f5a99d47a2 Update D3D headers in test project 2021-01-13 14:25:54 +00:00
baldurk 026da176bb Update copyright years to 2021 2021-01-13 13:56:10 +00:00
baldurk b01c84f051 Implement proper handling for unbound views in shader debugging
* We force FetchUAV/FetchSRV to always return something, and it can be empty if
  the resource is unbound meaning we get proper OOB behaviour for it. The D3D12
  implementation still prints an error message for registers that don't
  correspond to the root signature at all, but for D3D11 we silently allow it.
2021-01-05 18:26:27 +00:00
baldurk bd342e1596 Fix buffer overrun in D3D12_Draw_Zoo 2020-12-10 16:46:01 +00:00
baldurk 55b84f4e7c Test that creating root signatures identical to internal sigs works OK 2020-10-29 16:27:31 +00:00
baldurk ed0138a242 Test that debugging sampling from vert shaders in D3D12 works correctly
* We also test that pixel shaders can be debugged even if they have
  DENY_ROOT_SIGNATURE_ACCESS enabled.
2020-10-29 16:12:33 +00:00
baldurk ffd8827812 Add test that tries to stress reallocation/pool allocation of commands 2020-10-29 15:08:50 +00:00
baldurk 3465809447 Add test that different list/queue types are handled in D3D12 2020-10-29 12:51:29 +00:00
baldurk cf8e8a15fe Test dimension fetching in D3D12 shader debugging with NULL desc struct 2020-10-22 16:02:59 +01:00
baldurk 8bdd9585f5 Test D3D discards with NULL region or rects 2020-10-22 15:10:17 +01:00
baldurk ec73718cf0 Test that overlays work on D3D12 with no viewport or scissor bound 2020-10-22 14:48:33 +01:00