442 Commits

Author SHA1 Message Date
Jake Turner d0b69c7034 Add Python test helper validate_eventids()
Called when loading captures in Iter_Test and Repeat_Load

Checks the consistency of EventIds:

Walk the actions to find all the referenced EventId's:
- Error if any EventId is duplicated
- Error if the EventId's are not contiguous (with no gaps)
2026-04-24 15:50:40 +01:00
Jake Turner 2287790c41 Extend VK_Resource_Usage test: multiple usages, desc buffer copying
- Bind the same resource as the Indirect Buffer and the Index Buffer
  - Defines the resource usage when an indirect command binds the same resource for multiple usags i.e. Indirect + Index Buffer
- Descriptor buffer contents set by earlier command buffer than usage in a single submit
  - Verifies the resource usage submit replay is correct (one command buffer at a time)
2026-04-23 16:14:13 +01:00
Jake Turner 0384c64d81 Fix submit semaphores in VK_Resource_Usage test
Fix validation layer errors
2026-04-22 12:24:34 +01:00
Jake Turner 15dfa312da Extend VK_Resource_Usage test: multiple command buffer submit/exec
Execute multiple secondary command buffers at once
Test loose events (barriers) on nested secondary command buffer, secondary command buffer which is submitted multiple times and a command buffer which is submitted multiple times
Submit the same command buffer multiple times
2026-04-21 10:39:23 +01:00
Jake Turner e4a3fdce0f Extend VK_Resource_Usage test
IndirectDrawCount
Loose events (barriers) after actions
2026-04-16 15:57:22 +01:00
baldurk 0b9a36b581 Fix ID registration when false-duplication happens on replay
* We normally deduplicate during capture, but replay can introduce new
  duplication against internal objects. Using ReplaceResource() would fix this
  but updating the wrapper map is necessary for D3D11 to query current state
  properly.
2026-04-16 14:00:55 +01:00
Jake Turner 3ba5cc499d D3D12_Execute_Indirect Test for large draws with Quad Overlay(Pass) 2026-04-14 17:28:55 +01:00
Jake Turner 2361be9f36 Add shader debug test to D3D12_Descriptor_Indexing
Tweak test shader to exercise shader debug simulation of SM6.6 direct heap access
2026-04-14 14:18:16 +01:00
Jake Turner 022a63e1bc Remove extra rdtest.log.end_section in VK_Mesh_Shader
Fixes HTML output
Move the other VK_Mesh tests over to use "with rdtest.log.auto_section" construct
2026-04-09 09:42:33 +01:00
Jake Turner 3cbf516e5f Extend VK_Resource_Usage test
* Descriptor Set: IndirectDraw, IndirectDrawIndexed, IndirectDispatch
* Secondary Command Buffer: Descriptor Set: IndirectDraw, IndirectDrawIndexed, IndirectDispatch
2026-04-08 13:57:33 +01:00
Jake Turner fb8d1e0ed8 Extend VK_Resource_Usage test
A specific demos test instead of using the VK_Simple_Triangle demo

* No Descriptor Set: Draw, DrawIndexed
* Descriptor Set: Draw, DrawIndexed
* Descriptor Buffer: Draw, DrawIndexed
* Secondary Command Buffer: No Descriptor Set: Draw, DrawIndexed
* Nested Secondary Command Buffer: No Descriptor Set: Draw, DrawIndexed
* Descriptor Set: Compute Dispatch
* Descriptor Buffer: Compute Dispatch
* Secondary Command Buffer: Descriptor Set: Compute Dispatch
* Nested Secondary Command Buffer: Descriptor Set: Compute Dispatch
2026-03-31 15:49:46 +01:00
Jake Turner e53f27ef06 Added VK_Resource_Usage to check resource usage without a replay 2026-03-19 16:03:56 +00:00
baldurk aebb1f90ee Fix AoS output in mesh viewer being incorrect with mesh shaders
* This would generally only come up with gl_PerVertex, and was hidden before
  because gl_Position is the first member. It likely would also reproduce if a
  user had a struct output from the mesh shader.
2026-03-16 15:12:30 +00:00
Jake Turner 337f5f20e5 Update VK_Parameter_Zoo test to macth the extra submit in the test 2026-03-13 17:31:17 +00:00
Jake Turner b243f125d9 Removed unused comment and code from VK_Custom_Resolve test 2026-03-05 08:43:39 +00:00
Jake Turner 2fa0d466e4 Change VK_Custom_Resolve test to check for pre/post mod validity 2026-03-03 16:53:14 +00:00
Jake Turner 1cd63c2d6c Added VK_Custom_Resolve test
RenderPass and Dynamic rendering for MSAA 4x target with a custom resolve shader
2026-03-02 12:49:17 +00:00
baldurk a4b8179794 Fix query tracking to be per-cmdbuf on replay. Closes #3797 2026-02-13 13:06:19 +00:00
baldurk 1f29df7bfb Add test for D3D12 predication 2026-02-04 22:33:57 +00:00
Jake Turner 1bd80b13cc Extend VK_Mesh_Shader tests for struct arrays, struct in a payload 2026-02-04 13:25:18 +13:00
baldurk bd78fcc473 Update multiview test to check shader exported viewport
* This also has code to support the qcom implicit viewport, but we disable that
  path by default since it would break all the single-viewport tests.
2026-01-30 18:11:41 +00:00
baldurk 965d1c9568 Add demo tests for annotations 2026-01-28 14:42:11 +00:00
Jake Turner 9c4a62397e Make VK_Shader_Debug_Zoo fail test not just error
Compute tests were resetting "failed" to False
2026-01-27 16:16:29 +13:00
Jake Turner 7782bc3452 Make VK_Graphics_Pipeline debugged pixel test fail instead of an error 2026-01-08 06:57:56 +13:00
Jake Turner 1b5543e74f Fix D3D12 Compute Derivative Tests
Use groupId for the output buffer index to match the python
Only output results for workgroup 1,0,0

Do not reset test failing to false in check_compute_derivative_tests()
2025-12-22 09:03:33 +13:00
Jake Turner 1b56d385fe D3D12 Test cases for SM6.6 Derivatives in Compute Shaders
HLSL
ddx()
ddx_coarse()
ddy()
ddy_coarse()
ddx_fine()
ddy_fine()

CalculateLevelOfDetail()
CalculateLevelOfDetailUnclamped()
Sample()
SampleBias()
SampleCmp()
2025-12-12 12:02:16 +13:00
baldurk e85651545f Add test of GL shader debugging 2025-12-02 12:17:36 +00:00
Jake Turner 97755b5ebb Test cases for VK_KHR_compute_shader_derivatives
dFdx, dFdy, dFdxFine, dFdyFine, dFdxCoarse, dFdyCoarse

OpImageQueryLod (textureQueryLod)
OpImageSampleProjImplicitLod (textureProj)
OpImageSampleImplicitLod (texture)
OpImageSampleDrefImplicitLod (textureProj)
2025-11-26 11:40:22 +13:00
Jake Turner 792afc2190 Tweaked test success message for new D3D12 EI test 2025-11-22 12:52:22 +13:00
Jake Turner a9056f1eca Add a D3D12 EI test case for an EI which does not need a root signature
EI with:

D3D12_VERTEX_BUFFER_VIEW
D3D12_DRAW_ARGUMENTS
2025-11-20 15:41:32 +13:00
Jake Turner dbbd9ba010 Added MSAA tests for SM6.0 and SM6.
Disabled in the python because the RenderDoc does not currently support DXIL debugging of MSAA instructions or SV_Barycentrics
2025-11-17 05:47:55 +13:00
Jake Turner 0194951bca Fix D3D12_Resource_Mapping_Zoo false failure if no SM6.6 action to test
Apply the same fix for no SM6.0 action to test
2025-11-12 17:42:03 +13:00
Jake Turner f858b2320f Extend D3D12_Shader_DebugData_Zoo tests to include matrix
Check matrix in the outputs from Vertex Shader
Check matrix in the inputs to Pixel Shader
Check matrix debug data source values from debugger trace
2025-11-12 11:10:32 +13:00
Jake Turner 4d180eecfa Tweak D3D12_Resource_Mapping_Zoo test to mark as failed in all cases 2025-11-12 10:57:13 +13:00
baldurk 1a5177453c Move GL test to use common pixel history test framework 2025-10-27 11:50:36 +00:00
baldurk fbab189b06 Move D3D11 test to use common pixel history test framework 2025-10-27 11:50:35 +00:00
baldurk a6ad1313fd Move D3D12 test to use common pixel history test framework 2025-10-27 11:50:35 +00:00
baldurk d8fa6a1747 Revamp vulkan pixel history test to cover more cases
* The test is also written generically to be applied to other APIs uniformly
2025-10-27 11:50:35 +00:00
Jake Turner a4d407ec3a Enable D3D11, D3D12 groupshared, subgroup, workgroup tests
D3D11_Groupshared, D3D12_Groupshared
D3D12_Subgroup_Zoo
D3D11_Workgroup_Zoo D3D12_Workgroup_Zoo
2025-10-25 11:01:13 +01:00
baldurk 41e9f3c426 Add a demo project with extremely high overlap/sparseness buffers
* For stressing memory overhead in buffer initial states
2025-09-29 16:37:45 +01:00
Jake Turner 9e63b3fb8c Enable VK_Groupshared test 2025-09-28 07:26:30 +01:00
Jake Turner fc2c080a77 Remove unused cycles variable in VK_ShaderDebugZoo 2025-09-24 14:01:30 +01:00
Jake Turner decbcff6ab Enable Vk Workgroup and Subgroup tests 2025-09-24 12:04:37 +01:00
Jake Turner e16a714aba New cbuffer tests: D3D11, D3D12 packedoffset; D3D12 cbuffer array
cbuffer packed_consts : register(b2)
{
  float col1z : packoffset(c1.z); // 4+2
  float col2w : packoffset(c2.w); // 8+3
};

struct ArrayStruct
{
  float4 a;
};

ConstantBuffer<ArrayStruct> array_consts[2] : register(b3);
2025-09-23 15:59:48 +01:00
baldurk a05fd08a1c Add support for VK_KHR_maintenance6. Closes #3602 2025-08-25 11:36:01 +01:00
baldurk fa0ba4a532 Don't disable blending for fetching per-fragment postmod 2025-08-18 13:28:11 +01:00
Jake Turner a8ee82bfe8 Extend D3D12_EXECUTE_INDIRECT test for partial update of root constants
Change colour of triangle based on root constant values set by direct API not by indirect API.
This allows verification that RenderDoc replay of indirect root constants does not alter values set by the direct API
2025-07-31 08:07:19 +01:00
Jake Turner 08696443a0 Added workgroup performance tests and basic D3D11 Workgroup test
Added D3D11_Workgroup_Zoo, D3D12 Workgroup Zoo, Vk Workgroup Zoo performance tests

Performance tests primarily for performance testing workgroup debugging speed

Changed workgroup and subgroup result variable from "data" -> "testResult" to help to reduce conflicts
2025-07-21 09:16:56 +01:00
baldurk 3e70a37fac Add test of descriptor buffer 2025-07-09 09:57:56 +01:00
baldurk 0293487eb8 Properly handle D3D11 constant buffers with a 0 range specified 2025-07-04 14:10:51 +01:00