342 Commits

Author SHA1 Message Date
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
Jake Turner 04856b53c1 Enable D3D12 Pixel History MSAA test
Replay code was fixed in 7e8c22ce68
2024-01-02 14:05:00 +00:00
Jake Turner 902a095c60 Marked GL Pixel History as a slow test 2023-12-31 08:41:23 +00:00
Jake Turner 51ae45420d Extend D3D11 Pixel History tests
Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
2023-12-31 08:41:23 +00:00
Jake Turner 0171ee464a Tidyup python logging in GL Pixel History 2023-12-31 08:41:23 +00:00
Jake Turner a70bed751b Extend D3D12 Pixel History tests
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event

Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
This test validates the code change in 4815adaa83
2023-12-31 08:41:23 +00:00
Jake Turner baa5999582 Extend Vk Pixel History tests
Check the post mod stencil at pixel location 110,100
Check the post mod stencil is unknown at pixel location 275, 260 for fragment zero of a multi-fragment event

Validate that in a fragment event the postMod stencil value should be unknown (-1 or -2)
2023-12-31 08:41:23 +00:00
Steve Karolewics 28ce7ac51c Add test for D3D12 pixel history 2023-12-18 07:51:51 +00:00
Jake Turner 18a28eb8dc SPIR-V shader debug OpSwitch tests
Test with selector and literal of different types "int", "uint", "long", "ulong"
2023-12-13 10:24:47 +00:00
baldurk 0d9ea809dd Fix some test failures by consistently stripping gl_PerVertex_Var prefix 2023-11-17 18:47:47 +00:00
Dan Hawson 910f1dcd7e Add new d3d12_multi_wait_before_signal.py test
It's currently forcibly disabled via 'check_support' because it's known
to fail due to the fact that the commands are always serialised and
replayed in submission order instead of the order that respects queues
blocked on fence waits that get signalled later from other queues.
2023-11-08 15:25:36 +00:00
Jake Turner 3fbf060894 Test for very large variable sized descriptor binding
New Binding 3
Initial size is UINT32_MAX
Updated to be sized DESC_ARRAY3_SIZE
Used in the shader to ensure the binding is referenced

Stress tests the FetchShaderFeedback code when it computes the maximum size of feedbackStorageSize.
2023-11-01 14:53:06 +00:00
Jake Turner b835a4cbad Abs x,y for pixel history in Iter_Test python script
Prevents exceptions about uint32_t overflow if negative x or y is used
2023-10-02 09:06:08 +01:00
baldurk d88eff15f3 Update execute indirect test to verify more complex EI behaviour 2023-09-18 12:19:36 +01:00
baldurk 1bfe6d1492 Add dedicated test for VK_Counters so GPU duration isn't degenerate
* Some cards run it so fast that the triangle takes "0" microseconds
2023-09-12 21:53:23 +01:00
Jake Turner bfe89e4c17 Extended test to include a test for GL uniform array of size 1
ie.
uniform float2_struct M[1];
2023-09-05 09:36:11 +01:00
William Pearson 71e886cecc Add demo/test for many primitives hitting the same pixel in one drawcall 2023-08-09 10:58:04 +01:00
baldurk d23cf4bf0b Allow a little latitude on expected line numbers in callstacks test 2023-08-04 17:06:03 +01:00
Jake Turner 53bf231104 Extend D3D12 Execute Indirect test
Change it to do 8 indirect draws with a clear in between.
Check the pixel and mesh data for each draw is correct (simple triangle)
2023-07-03 13:05:10 +01:00
baldurk d57a7c9979 Fix error message in D3D12 compute test 2023-05-18 17:04:39 +01:00
baldurk cc3d383287 Manually check depth bounds test in vulkan pixel history 2023-04-14 16:08:10 +01:00
baldurk fb0b643c55 Mark non-final fragments as having unknown stencil in pixel history 2023-04-14 16:08:10 +01:00
baldurk 36731cb841 Handle maps on D3D12 of different aliases in a placed heap
* We need to check for map writes even if the mapped buffer isn't the one that's
  referenced by a submit but still overlaps it. We do this by moving to the heap
  for all placed resources so any map to a buffer on a heap is checked as long
  as any buffer bound to that heap is referenced.
2023-03-13 17:39:16 +00:00
Tony T df7ed64ad0 Create separate shader for sint, uint and floats
Co-authored-by: Orson B <obraines@gmail.com>
Signed-off-by: Tony T <tony@tonytascioglu.com>
2023-03-13 10:20:07 +00:00
Bruce He 50afbb05bc Address other comments 2023-03-13 10:20:07 +00:00
Bruce He 692617d814 Rename test gl_pixelhistory_formats to gl_pixel_history 2023-03-13 10:20:07 +00:00
Orson Baines 08be49dce3 Add first unit test for Open GL Pixel History
- Support for integer texture formats in OpenGL Pixel History implementation
- Test reading pixels from a triangle with a variety of texture formats
2023-03-13 10:20:07 +00:00
baldurk 2c2bafa1a6 Add protection on D3D12 for bad internal API calls from python 2023-03-09 13:23:19 +00:00