Commit Graph

369 Commits

Author SHA1 Message Date
Tristan Ritchie 2eade4650b Add support for VK_KHR_maintenance5 2025-03-19 15:43:08 +00:00
baldurk b400d4bc52 Refactor D3D ps input fetch to use quad swizzle helper
* Also centralises and shares more code between D3D11 and D3D12 to use the same
  shader
2025-03-14 18:54:38 +00:00
Jake Turner 90827deed3 Add DebugPixel to D3D12_Mesh_Shader python tests
Validates can do shader debugging on pixels generated by mesh shaders
2025-03-12 13:50:36 +00:00
Jake Turner 7b3e1cd3f6 Free the debugger trace in multiple places during D3D12 shader tests 2025-03-09 11:30:11 +00:00
Jake Turner 9cac526d49 Add d3d12_shader_debugdata_zoo test
Similar to d3d12_shader_debug_zoo but instead of verifying debugger simulation accuracy used to verify debug data is parsed and present

Supports SM6.0 and the DXIL debugger - verifies debug data in pixel and compute shaders
2025-03-06 13:34:57 +00:00
Jake Turner 5120723135 Add Shader source variable helper functions to rdtest
parse_shader_var_type()
get_source_shader_var_value()

moved out from D3D12_Shader_Debug_Zoo
2025-03-06 13:34:50 +00:00
Jake Turner aaefec8b79 D3D12_Shader_Debug_Zoo tests for loading from global variables
Includes updating the python test to validate the results from compute shader debugging
2025-03-06 10:55:37 +00:00
baldurk cd94206b0f Add sections in Repeat_Load test 2025-02-27 15:31:00 +00:00
baldurk 19512165bb Bail from Iter_Test when fatal errors are detected 2025-02-26 16:12:10 +00:00
baldurk 7ac76492f4 Clamp pixel shader comparisons to output components in Iter_Test 2025-02-26 16:11:58 +00:00
Jake Turner 7ebd608cbe Add basic compute shader debug test action to iter_test
Does not check any output, purely runs DebugThread on a random groupId and threadId
2025-02-24 16:37:45 +00:00
baldurk e7f400e4f3 Add D3D12 handling of swizzled UAV loads/stores 2025-02-21 13:46:58 +00:00
baldurk d6c560415a Add D3D11 handling of swizzled UAV loads/stores
* Ensuring we properly clamp for non-typed UAV stores. Typed UAV stores are
  'easy' because they must always write all components.
2025-02-21 13:46:58 +00:00
baldurk ed27404d07 Add epsilon to VK_Pixel_History test 2025-02-14 17:33:57 +00:00
baldurk cfefa5d5ef Add a test for new group ops 2025-02-10 17:52:31 +00:00
baldurk c8223f5869 Fix D3D12 descriptor indexing test for named descriptors 2025-01-14 12:18:31 +00:00
baldurk 980b6a8bf0 Add test of SM6.7 bitfield reflection 2025-01-07 13:43:45 +00:00
baldurk a11d673b3f Update test for descriptor names 2024-12-16 11:59:03 +00:00
baldurk 9d32418e33 Fix GL_Buffer_Updates to not rely on exact thumbnail 2024-12-10 00:06:39 +00:00
baldurk aa30ac2c10 Don't overlap storage with multiple inline UBO updates in one template
* Previously we were writing the inline UBO data to the same byte storage
  meaning the last update's data would write over all updates.
2024-12-09 16:19:20 +00:00
baldurk 8d04479d20 Add additional check on index buffer values being out of bounds 2024-12-03 15:01:58 +00:00
Jake Turner 4532b888ed Add SM 6.2 and StructuredBuffer<int16_t> to D3D12 Shader Debug Zoo test 2024-12-03 05:21:41 +00:00
Jake Turner a39c4cf1db D3D12 Pixel History do not copy depth for non-raster events
This can be invalid i.e. a ClearRenderTarget() no guarantee what/if a depth target is bound
2024-11-27 11:24:45 +00:00
Cam Mannett 7b767c9e6e Preliminary Vulkan AS/RQ test
This test renders a small triangle that casts a shadow from a point light, onto a larger triangle.  The test runner then checks that various pixels in the final output are the correct colour.

There is also an arbitrary AS copy in the render loop just to hit more API coverage when manually capturing, but the test runner doesn't check its output.

Core test work originally done by martyn.jacques@arm.com
2024-11-25 13:09:22 +00:00
Jake Turner 2d0ce14633 Iter Test skip pixel debug when no pixel shader bound at mod event 2024-11-15 13:19:00 +00:00
Jake Turner dc27caaa08 Iter Test : pixel history and vertex debug changes
Do not pixel debug on an unknown primitive ID (-1)
Allow pixel debug and vertex debug on non-drawcall actions which have non-zero drawIndex i.e. Indirect draws
2024-11-07 15:23:27 +00:00
baldurk b49e2e607f Add test of very short-lived RTV/DSV heaps 2024-10-03 16:32:09 +01:00
Jake Turner 982f464eee Do not call end_section when a shader debug pixel comparison test fails 2024-09-20 17:44:25 +01:00
Jake Turner 42a1b4e641 For Test D3D12_Sharing validate the D3D12 Drawcall results
In addition to the Copy results
2024-09-18 12:45:55 +01:00
Jake Turner 0f8ad0d1fe Conditionally test SM 6.0, 6.6 in D3D12_Shader_Debug_Zoo
Added SM 5.0 to the basic compute shader debug test
2024-09-16 09:36:37 +01:00
Jake Turner 8745c399ad Extended existing shader model coverage to include 6.0, and 6.6
Added Compute shader test for SM 6.0 and SM 6.6
Added very basic vertex shader test to the triangle rendering for each SM
2024-09-10 14:59:03 +01:00
Jake Turner 84786aea20 Demos test D3D12_Shader_Mesh 2024-07-24 13:21:57 +01:00
baldurk 7db141c77b Implement bindless feedback for samplers on D3D12. Closes #3387 2024-07-22 16:17:10 +01:00
Jake Turner e8ecf2cccb Added D3D11 Pixel History test for pixel shader UAV Write 2024-06-20 11:55:30 +01:00
Jake Turner 141354a2a4 Extended VK_KHR_Buffer_Address test to cover #3346
One extra draw from GPU memory which doesn't change and is unmapped during the draw loop
2024-06-11 12:05:27 +01:00
baldurk 56976ff4a5 Make missing postvs outputs non-fatal 2024-05-31 15:25:47 +01:00
baldurk 9a18e871e5 Add testing of aliased bindings with descriptor feedback. Refs #3288 2024-04-10 18:58:53 +01:00
baldurk 9de4a79859 Update tests to new descriptor interface 2024-04-10 18:58:52 +01:00
baldurk beefd5b044 Fix descriptor set index reference in VK_Graphics_Pipeline test 2024-04-03 12:40:22 +01:00
baldurk 4caf3e4e13 Correct struct name typo in python script 2024-03-18 10:28:37 +00:00
Jake Turner b36b7cf6b8 Vulkan Multi-view test
Vertex shader output Red for view 0, Green for view 1, fragment shader does not use viewIndex.
Fragment shader output Red for view 0, Green for view 1, vertex shader does not use viewIndex.
Geometry shader output Red for view 0, Green for view 1, vertex and fragment shader do not use viewIndex.

Python checks vertex and pixel shader debug output against replay rendering output
2024-03-13 07:58:48 +00:00
Jake Turner 7934d1d16e Change DebugPixel() to take a DebugShaderInputs struct
DebugShaderInputs struct contains existing the parameters:

sample
primitive

and a new parameter

view

Default constructor for DebugShaderInputs sets the parameters to NoPreference (~0U).
2024-03-13 07:58:48 +00:00
Jake Turner 20578f46a6 Extend D3D12 ExecuteIndirect test to do multiple draws per Execute
The argument buffers are used fully used with no spare bytes
The python test iterates over every draw to check the replay has a valid output target count
This verifies the replay did not crash when replaying ExecuteIndirect with multiple draws and an argument buffer with no spare bytes
2024-01-30 17:03:11 +00:00
Jake Turner 2cc4558815 Update tests python to work with Python 3.12
Tested running with Python 3.12, 3.11, 3.10, 3.6.8
2024-01-30 09:30:12 +00:00
baldurk 49c96806b6 Add test of solo numbered semantics to linkage zoo tests 2024-01-23 11:11:14 +00:00
Jake Turner e18ea02a2b D3D12 Pixel History Test add some drawcall stress tests
1000 drawcalls of 1 instance of 1 triangle
1 drawcall of 1000 instances of 1 triangle

Python tests verify the count of modifications is correct, the modifications are self-consistent and the picked texture value matches the final modifications tex after value
2024-01-22 09:39:22 +00:00
Jake Turner 932d1b1754 Basic Test for VK_KHR_Buffer_Address
Compare the pixel shader debugger result against the GPU rendered output
Compare the vertex shader debugger results against the postVS output
2024-01-17 08:24:51 +00:00
Jake Turner b820a46605 D3D11 Parameter Zoo tests for tiled resource handling
CreateTexture2D(), CreateTexture2D1(), CreateBuffer() should fail
CheckFeatureSupport() with D3D11_FEATURE_DATA_D3D11_OPTIONS1 or D3D11_FEATURE_DATA_D3D11_OPTIONS2 should return D3D11_TILED_RESOURCES_NOT_SUPPORTED
2024-01-09 12:44:14 +00:00
Jake Turner edbcbe53e2 D3D12 Pixel History Simple D16 test 2024-01-09 12:44:14 +00:00
Jake Turner 9dad897802 Enable D3D12 Pixel History Depth Bounds test
Replay code was fixed in 3d5ce05e11
2024-01-02 14:05:00 +00:00