Commit Graph
117 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 de619024c8 Test for extended UAV support in D3D11 test 2022-06-30 13:51:26 +01:00
baldurk 95c8a3f42e Test swizzles of UAV reads 2022-06-17 17:27:30 +01:00
baldurk 4a0bc691a7 Add test that solid/lit rendering works on points and lines 2022-06-17 17:27:30 +01:00
baldurk 96a7639c2e Add test of flow control constructs in D3D11 shader debugging 2022-05-03 14:06:07 +01:00
baldurk fcdea67879 Update copyright years to 2022 2022-02-17 17:38:32 +00:00
baldurk 861f55b467 Test picking empty draws in mesh view 2021-11-19 12:26:06 +00:00
baldurk 352821026e Add tests that frame 0 can be captured and contains correct events 2021-11-11 14:43:17 +00:00
baldurk d2a03c6e06 Fix filling in missing components on typed buffer loads 2021-07-28 11:37:13 +01:00
baldurk 1ed4b561e6 Fix discard patterns to work correctly with multisampled UINT textures 2021-05-27 14:18:05 +01:00
baldurk 2af11c5395 Add test of AMD extensions in D3D12 2021-04-30 16:41:17 +01:00
baldurk 26aa09c665 Refactor D3D12 tests to check for options once in Prepare 2021-04-29 12:52:28 +01:00
baldurk 2720ff354a Test structured export/import of MSAA textures 2021-04-15 15:34:14 +01:00
baldurk 2333cfa2a1 Test that UAV reads in shader debugging read data prior to event 2021-02-01 13:31:23 +00:00
baldurk 28bf213382 Test APIs where scissor can be disabled doesn't affect overlays 2021-02-01 13:14: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 86ca794494 Add test to check ID3DDeviceContextState refcounting/rewrapping 2021-01-15 11:33:13 +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 1ab2047ecb Reset state in D3D shader debugging to before draw when fetching UAVs
* Debugging shaders with UAV access could(likely will) have side-effects on
  those UAV contents, so when ContinueDebug needs to fetch UAV contents we
  should replay back to before the draw to fetch them.
* This replay only happens once per ContinueDebug, and UAV contents are cached
  globally so we only do it once per UAV that's accessed, so the impact is low.
2020-12-07 15:41:03 +00:00
baldurk 8be0da2ce3 Add a test of AMD shader operations 2020-11-04 17:48:49 +00:00
baldurk 5cd83365a8 Add basic texture sampling tests to D3D11 shader debug tests 2020-10-22 15:48:30 +01:00
baldurk 8bdd9585f5 Test D3D discards with NULL region or rects 2020-10-22 15:10:17 +01:00
baldurk 3f8fb1e1b6 Add MSAA case to overlay tests 2020-10-22 14:11:01 +01:00
baldurk 53fc6ba089 Add test that feature level 9.x programs can be captured on D3D11 2020-10-21 14:36:16 +01:00
baldurk 9e17b91a94 Test different variations of DXGI swapchains on D3D11 and D3D12 2020-10-02 17:41:58 +01:00
baldurk fdeea5204d Refactor and optimise D3D11 refcounting implementation
* In heavy D3D11 workloads the refcounting overhead especially during fast
  binding changes was significant. Refactoring the refcounting to work on a
  different model and deferring destruction of objects removes most of the
  overhead.
2020-09-10 13:35:32 +01:00
baldurk 351687eb87 Test that D3D11 shader debugging doesn't internally pollute state 2020-07-31 16:24:59 +01:00
baldurk c8c281b503 Test swizzles on byte address buffer loads 2020-07-29 14:52:05 +01:00
baldurk 485f7d21fc Make overlays interact consistently with viewport/scissor
* We also add a red/green display to the viewport and scissor overlay to show
  pixels that fail the scissor test.
2020-07-17 16:53:34 +01:00
baldurk 02a54be6ad When replaying resource discards fill with explicit pattern. Closes #284
* This helps catches cases where a discarded image is accidentally used and in
  many cases may still have valid data. Particularly on Vulkan this is relevant
  for DONT_CARE renderpass load and store ops.
2020-07-13 17:29:11 +01:00
baldurk 631b56a04e Add support for compiling with dxcompiler in tests 2020-06-18 17:22:44 +01:00
baldurk a0a373a8e1 Fix handling of buffer truncation and zero-sized buffers 2020-05-29 17:26:29 +01:00
baldurk 43b6f850d9 Fix sincos output on D3D12 shader debugging 2020-05-20 10:51:23 +01:00
baldurk 78335f7d00 Fix calculation of array stride on structs in D3D
# Conflicts:
#	util/test/tests/GL/GL_CBuffer_Zoo.py
2020-05-13 18:07:26 +01:00
baldurk 15fa728ab9 Fix handling of empty structs in D3D 2020-05-13 18:07:26 +01:00
baldurk bfcc484a7c Add tests of drawcall variants 2020-05-12 19:04:57 +01:00
baldurk b8f83fca4c Add helper for blitting to swapchain in demos
* This isn't needed for testing but it's convenient to get simple window output
  even when we need to be writing to an F32 target
2020-05-11 18:04:22 +01:00
Steve Karolewics f9b86f3a82 Fix broken D3D shader linkage test cases
The rules for merging semantics into an array were not strict enough.
If either the type, interpolation mode, or size is different, or if it
is not using a register's x component, then we can't combine it. Also,
the rules for marking a semantic as array length 1 were too strict,
resulting in some semantics packing into other registers incorrectly.
2020-05-11 18:04:10 +01:00
Steve Karolewics 4c7f30e690 Created a D3D11 version of the shader linkage zoo test 2020-05-11 18:04:10 +01:00
baldurk 8ee6e43ed6 Check that we can render secondary mesh data with only two components
* We need to be sure that we don't accidentally read RGB anyway.
2020-04-21 17:09:24 +01:00
baldurk 38abf04909 Set up python script to run VK shader debug tests
* Since we expect many more tests it also runs the test texture in a 2D grid
  with N drawcalls
2020-04-07 17:43:30 +01:00
baldurk 5e2de7dd34 Fix issues switching between mips with overlays on vulkan 2020-04-07 14:05:43 +01:00
baldurk 230cf69761 Test integer division by zero in DXBC debugging 2020-04-01 17:18:59 +01:00
baldurk 7ff8a95205 Don't end stream-out queries twice 2020-03-20 16:16:52 +00:00
baldurk 40611a3dde Test subresource rendering in overlay tests, remove png comparisons 2020-03-12 16:51:19 +00:00
baldurk b392c07d83 Add tests that use large vertex buffers 2020-03-11 18:00:53 +00:00
Steve Karolewics baa7adea30 Implement GetSampleInfo for D3D12 debugging 2020-03-09 10:56:56 +00:00
baldurk 2250e44ae6 Add test of D3D11 pixel history
* This doesn't test every edge case, but it is a simple smoke test that ensures
  any format can at least get consistent accurate results out.
* Further work is needed to test the different failures, overdraws, primitive
  IDs, and all the other specific checks in the history.
2020-03-05 19:35:45 +00:00