baldurk
06da5d1974
Set demo window title for vulkan tests
2026-09-15 17:00:54 +01:00
baldurk
510d16d900
Report more accurate data for Pixel history with discards & fragments
...
* For draws where some fragments discard, D3D12 & Vulkan currently can't
distinguish which specific fragments did and didn't discard because they're
processed batched in separate callbacks rather than incrementally like D3D11 &
GL which can track a discarded offset by doing one stencil count at a time.
This means we can't get primitive information or ordering, we only get a list
of the passing fragments and a set of failing fragments.
* Note that on all APIs we also can't distinguish when instancing is present,
because there could be multiple "identical" primitives from different
primitives, some of which discard and some don't.
2026-09-15 17:00:54 +01:00
baldurk
49f3c76c57
Fix demos reference to device from window
2026-09-14 09:56:36 +01:00
baldurk
527f34614b
vkDeviceWaitIdle workaround because presentation is broken
2026-09-13 12:57:43 +01:00
baldurk
1fbec8ee48
Print total number of cases properly in log
2026-09-13 12:54:54 +01:00
baldurk
18e4d44ec3
Log VkResult errors to demos log
2026-09-13 12:54:40 +01:00
baldurk
a3fafbc29a
Don't pre-split work across parallel job workers
2026-09-12 02:15:12 +01:00
baldurk
19718e4feb
Add UI extension for running tests within the UI
2026-09-11 21:46:16 +01:00
baldurk
8392bca098
Fix incorrect error string
2026-09-11 21:17:19 +01:00
baldurk
f58d376b3a
Add an option to the logger to immediately fatal on first error
...
* This is mostly useful for some of the tests that want to be able to run and
accumulate multiple errors, but while debugging we want an exception to catch.
2026-09-11 21:17:19 +01:00
baldurk
d56ea92fd5
Add some helpers for querying and reloading tests
2026-09-11 21:17:18 +01:00
baldurk
7faac83b00
Add a helper and context for tracking the last pixel pick
2026-09-11 21:17:18 +01:00
baldurk
ff7e147b39
Allow setting a capture context if tests are run in UI
...
* This means we can keep the UI in sync with things like resource replacements.
2026-09-11 21:17:18 +01:00
baldurk
01893b9896
Use context helpers for pixel history
2026-09-11 21:17:18 +01:00
baldurk
ca682d6d34
Use context helpers for pixel debugging
2026-09-11 21:17:17 +01:00
baldurk
3452ba8ffd
Use context helpers for thread debugging
2026-09-11 21:17:17 +01:00
baldurk
e6948a8c7e
Check for degenerate debug traces in process_trace
2026-09-11 21:17:17 +01:00
baldurk
191597b27c
Don't allow find_*_source_var to return None
...
* Almost all callers expect a return value, so better to raise an exception
inside and make it non-optional return
2026-09-11 21:17:17 +01:00
baldurk
ae019398cb
Remove checks for shader debuggability
...
* All APIs now support shader debugging by default and we assume/require all
shaders in tests to be debuggable.
2026-09-11 21:17:17 +01:00
baldurk
04af66d71f
Check for failed ShaderDebugTrace centrally
...
* We don't expect the debug to fail entirely and if it does we can throw a test
failure
2026-09-11 21:17:16 +01:00
baldurk
031212e916
Use context helpers for vertex debugging
2026-09-11 21:17:16 +01:00
baldurk
d9c72e7651
Include context information for pixel history and shader debug attempts
2026-09-11 21:17:16 +01:00
baldurk
2a0989ba9a
Use local helper function for setting current EID
...
* This lets the testcase track the current EID and print it when a failure
happens
2026-09-11 19:19:27 +01:00
baldurk
4fffe30bd4
Allow adding custom log outputs that aren't filenames
2026-09-11 19:19:26 +01:00
baldurk
d7cbb743e4
Set more tests to use common check_vertex_debug() helper
2026-09-11 19:19:26 +01:00
baldurk
fc27cf0deb
Add ability to run tests in parallel
2026-09-11 19:19:26 +01:00
baldurk
73545f0a51
Fix failed test movement for truncated logs
2026-09-11 17:27:36 +01:00
baldurk
8b492631c4
Allow multi-word test names in javascript processing
2026-09-11 17:27:36 +01:00
baldurk
3cc984148c
Put demos temp files in each demo's tmp directory
2026-09-11 17:27:36 +01:00
baldurk
d827d9be95
Pick default python module when running tests on windows
2026-09-11 15:04:05 +01:00
baldurk
748e089b15
Fix remaining static analysis identified issues in python test code
...
* This includes:
- Incorrect comparisons
- Missing type annotations where it can't be inferred
- Variable shadowing and bad use
- Unused imports
- asserts for non-None on types
* Passes clean on strict pyright checking except for
`reportMissingParameterType`, `reportUnusedVariable`, and
`reportOptionalMemberAccess` which are all too spammy and low value to be
worth addressing.
2026-09-11 15:04:05 +01:00
baldurk
1409c071a9
Split apart util.value_compare_diff to have better type annotation
2026-09-11 15:04:05 +01:00
baldurk
12636a1607
Switch from str.format to f-strings in tests
...
* These were available for python 3.6 too so was never any reason not to use
them except not being aware they existed.
2026-09-11 15:04:04 +01:00
baldurk
62e38bc249
Use helper config struct in Draw_Zoo instead of untyped dict
2026-09-11 15:04:04 +01:00
baldurk
796b68c1a8
Unify code to check mesh/task data against reference
...
* Also change the task payload data layout to match meshes, with one 'vertex'
(payload) per task thread
2026-09-11 15:04:04 +01:00
baldurk
ec36d155bc
Remove redundant type annotations
...
* These come from long ago when using PyCharm with not as good type checking and
with renderdoc module stubs that were incomplete so needed help identifying
types.
2026-09-11 15:04:04 +01:00
baldurk
79a5086a0c
Handle assert failures in logger directly, remove TestCase.check
...
* assert is handled specially by the type checker so we don't want to have
duplicate self.check / assert
* The original reason for TestCase.check was to print the assertion message but
this can be handled by checking for the AssertionError exception
2026-09-11 15:04:03 +01:00
baldurk
fd55020165
Add helper for checking vertex debugging matches postvs
...
* There are a few 'extras' here as the uses aren't quite uniform, but they are
close enough it makes sense to have a common helper
2026-09-11 15:04:03 +01:00
Jake Turner
033ce407b4
VK_Resource_Usage tweaks
...
- give names to: Queue, Framebuffer, Swapchain Image, Swapchain Image View, Shader Modules
- rename "barrerCmdSubmitFence" -> "barrierCmdSubmitFence"
- add a marker "Barrier Command Submit Fence"
2026-09-09 15:24:59 +01:00
Jake Turner
30c78d389a
Add VulkanGraphicsTest::setName() overload for VkQueue & VkShaderModule
2026-09-09 15:24:59 +01:00
Jake Turner
d08b53fd64
In Vk_Resource_Usage Python compute EIDs and reduce hard coded EIDs
2026-09-09 15:24:59 +01:00
Jake Turner
0c69b86d7c
D3D12_Execute_Indirect: skip checking all overlays inside the large EI
...
Inside the large EI draw with a count of 256: only check a few EIDs at the start and end of that EI.
Reduces the test time and the EIDs being skipped are not exercising different code paths during replay.
2026-09-09 15:17:00 +01:00
Jake Turner
356684b378
D3D12_Execute_Indirect Increase count buf draw count to 256
...
A small stress test to exercise RenderDoc resolving of EI actions during loading
2026-09-06 19:48:14 +01:00
baldurk
69a9c09ecd
Use correct clear colour for UINT discard texture
2026-08-26 09:23:58 +01:00
baldurk
30c817486e
Fix bad casts on overlay texture pixel picking
2026-08-25 15:29:58 +01:00
baldurk
752543e0fe
Don't test 1D block compressed textures in vulkan texture zoo
2026-08-25 13:19:05 +01:00
baldurk
1a3e8c79bf
Loosen precision requirements on vulkan shader debugging
...
* Test 185 does repeated pow() calls and the precision difference seems to
accumulate on mesa drivers at least.
2026-08-24 23:25:58 +01:00
baldurk
fc50157566
Use 0.5 for depth-equal test so it works on various precisions
2026-08-24 17:46:21 +01:00
baldurk
57a0d90aac
Ensure we have a depth buffer for GL depth bounds test
2026-08-24 17:04:14 +01:00
baldurk
950568fb8f
Rename previous/next to previousAction/nextAction in ActionDescription
...
* swig internally creates 'next' member which we normally want to avoid, so
prevent shadowing here by using a distinct name.
2026-08-13 17:46:47 +01:00