Jake Turner
282dd083db
Unify Vulkan RenderState tracking in Loading & Replay: Draw APIs
...
- Serialise_vkCmdDraw
- Serialise_vkCmdDrawIndexed
- Serialise_vkCmdDispatch
- Serialise_vkCmdDispatchIndirect
- Serialise_vkCmdDispatchBase
- Serialise_vkCmdDrawMeshTasksEXT
- Serialise_vkCmdDispatchIndirect2KHR
- Serialise_vkCmdDrawIndirectByteCount2EXT
2026-11-11 12:39:33 +00:00
Jake Turner
e3f42ff51f
Unify Vulkan RenderState tracking in Loading & Replay: Event APIs
...
- Serialise_vkCmdSetEvent
- Serialise_vkCmdResetEvent
- Serialise_vkCmdWaitEvents
- Serialise_vkCmdSetEvent2
- Serialise_vkCmdResetEvent2
- Serialise_vkCmdWaitEvents2
2026-11-11 12:38:48 +00:00
Jake Turner
1aec6913b7
Preparation for sharing Vulkan RenderState tracking in Loading & Replay
...
In the Loading state:
- ShouldUpdateRenderpassActive() returns true
- InRerecordRange() returns true
2026-11-11 12:37:53 +00:00
Jake Turner
66f213fe08
Extend VK_Resource_Usage C++ to test device VkEvent APIs
...
- vkSetEvent
- vkResetEvent
- vkGetEventStatus
2026-11-10 15:53:26 +00:00
Jake Turner
060c0c5aff
Added tests helper setName overload for vkEvent
2026-11-10 15:53:02 +00:00
Jake Turner
f3c399b6c9
Mark the VkEvent as referenced in device event APIs: Set/Reset/GetStatus
...
- vkSetEvent
- vkResetEvent
- vkGetEventStatus
2026-11-10 15:24:25 +00:00
Jake Turner
0cb2ab33e0
Apply -Wno-deprecated-literal-operator to demos project
...
- copied over from main RenderDoc project
2026-11-10 15:24:25 +00:00
Jake Turner
75b3b7b95b
Adjust the markers in VK_Resource_Usage
2026-11-10 15:24:24 +00:00
baldurk
ac17f5c7eb
Disable 3D depth textures entirely in VK_Texture_Zoo
2026-11-10 13:50:11 +00:00
baldurk
8330d91cf3
Don't double-delete main window
2026-11-10 12:02:47 +00:00
baldurk
8a55fc23a1
Fix sync/barrier issues in vulkan tests
2026-11-10 12:02:47 +00:00
baldurk
e3c29f80cd
Fix normal validation issues in vulkan tests
...
* Missing usage flags, invalid state creation/setting, invalid combination of
LOAD op and UNDEFINED layout, etc.
2026-11-10 12:02:46 +00:00
baldurk
eb8d0450a0
Don't add duplicate validation features structs
...
* This can happen if the test itself adds VK_EXT_validation_features
2026-11-10 12:02:46 +00:00
baldurk
77b4d531e5
Disable OBS during tests - it introduces validation errors
2026-11-10 12:02:46 +00:00
baldurk
a73b9214a5
Prefer using spirv-as for assembly SPIR-V assembly if possible
...
* Since we no longer can link shaderc we have external dependencies anyway, most
likely from the vulkan SDK. shaderc has never fixed the inability to apply
target env to shader assembly so this means we can specifically target some
SPIR-V versions.
2026-11-10 12:02:46 +00:00
baldurk
0a04b74e63
Reduce the number of descriptor sets in VK_Descriptor_Variable_Count
...
* This goes below the limit of what GPUVA will handle as a number of draws by
default in one command buffer.
2026-11-10 12:02:46 +00:00
baldurk
b345046d4a
Ensure we delete all resources before test shutdown
2026-11-10 12:02:46 +00:00
baldurk
0b15a71e88
Move extra renderpass dependencies to helper creator
...
* This means we get the same benefit of syncing with clears/copies in test-
created renderpasses.
2026-11-10 12:02:46 +00:00
baldurk
31cad11e3d
Enable features/extensions in vulkan tests that we use
2026-11-10 12:02:46 +00:00
baldurk
46ea9dc0d7
Mute a couple of validation messages on vulkan tests
2026-11-10 12:02:46 +00:00
baldurk
4b338b447b
Add helper for setting environment variable values
...
* Needed for vulkan layer control
2026-11-10 12:02:46 +00:00
baldurk
3e143508ed
Remove VK_EXT_Buffer_Address test
...
* This extension is no longer supported by VMA so doesn't run cleanly. We could
fix it up to do everything manually, but there's little point as it's clear
now that this extension had a short lifespan and limited support, and is
unlikely to be in use today in significant manner. We still support it in
RenderDoc of course, but there's not much value in testing it specifically
(and it wasn't auto-tested before)
2026-11-10 12:02:46 +00:00
baldurk
ae2f8db399
Add option to hard-break on validation errors in tests
...
* On D3D we also start checking for leaking objects on shutdown (Vulkan this is
done by default, GL we have no control over validation).
2026-11-10 12:02:45 +00:00
Jake Turner
5ebc85a6bd
Add Action and Callbacks to vkCmdBuildAccelerationStructuresIndirectKHR
2026-11-10 10:43:37 +00:00
Jake Turner
e0399b6ef9
Remove any semaphores when replaying vkQueueSubmit2
...
- this matches the behaviour of vkQueueSubmit
- if any submit has wait semaphores then a device wait idle will already have happened
2026-11-10 10:37:18 +00:00
Jake Turner
3211e1e0aa
Added Vulkan helper GetLoadingEventNode()
...
- Asserts in loading state
- Added assert in loading state to GetLastEventNode()
2026-11-10 10:31:49 +00:00
Jake Turner
ce216bd6a7
Added Vulkan helper AddEventResourceUsage()
...
- Adds the usage directly to m_LoadingEventNode
2026-11-10 10:20:06 +00:00
Jake Turner
0c319e9e41
Added helper function VulkanEventNode::AddResourceUsage
2026-11-09 08:18:53 +00:00
Jake Turner
7c7e913697
Fix VS2026 Release build linker error about missing symbol memset
2026-11-09 07:39:19 +00:00
Shahbaz Youssefi
2835a735cd
Fix color mask display when color write enable is static
...
When the color write enable state (from VK_EXT_color_write_enable) is
not dynamic (i.e the extension is not used),
VulkanRenderState::colorWriteEnable was initialized from pipeline's
color mask info. However, this information should be ignored if color
write mask is dynamic (with shader object / EDS3).
Instead, if color write enable state is not dynamic, it can be
implicitly considered to be true if VkPipelineColorWriteCreateInfoEXT is
not provided, or otherwise it's taken from that.
This change fixes the UI (and HTML export) where the color mask was
output as `____` in such situations regardless of what mask was
dynamically set.
2026-11-07 20:41:56 +09:00
baldurk
34fbfb4352
Add D3D11/Vk demos that do rasterization with no outputs
...
* They write directly to a buffer
2026-11-04 12:25:03 +00:00
baldurk
fd09bb3f4c
Add a dialog for directly-launching pixel shader debug. Closes #3422
2026-11-04 12:25:03 +00:00
Jake Turner
282b28b3a3
Reset parent command buffer RenderState after executing a secondary
2026-11-03 12:58:23 +00:00
Jake Turner
bf6fe56c5b
VK_Resource_Usage improvements
...
- add secondary commands buffers to Submit() calls so they get put back into the command buffer pool
- fix validation error about renderEndSemaphore
- fix sync validation errors
- add more names to objects
- fix some incorrect names
- move the pipeline bind to after marker "DrawIndirect: Single"
- add marker to start and end of EIDS which should be tracked for resource usage
- add a per frame update descriptorset
- bind compute descriptor sets before binding compute pipelines
- Remove hard coded EIDs from VK_Resource_Usage python
2026-11-03 10:52:15 +00:00
Jake Turner
e55f7a5497
DXBC Debugger: perform addition in OPCODE_UADDC
2026-11-03 07:58:14 +00:00
baldurk
b23be092cf
Fix compilation on older Qt versions
2026-11-02 17:31:20 +00:00
baldurk
f039dcdefc
Add a filtering system for the constant buffer viewer. Closes #3889
2026-11-02 16:36:36 +00:00
baldurk
aa42dd6e45
Fix vulkan capture open progress bar being stalled for much of the read
2026-11-02 14:45:04 +00:00
baldurk
3067fc8259
Improve visual spacing on event browser toolbars
2026-11-02 14:15:07 +00:00
baldurk
5c76c20d92
Don't clamp mesh vertex count by unused vertex buffers
2026-11-02 13:32:51 +00:00
baldurk
0a2278d5ea
Ensure interface names better match between debugging and reflection
2026-11-02 12:29:06 +00:00
baldurk
1d83c25876
Bump version to v1.48
2026-10-31 15:50:50 +00:00
Jake Turner
b0e1370309
Fixup EventBrowser support for handling filtering in StepNext/Prev
...
- Use the CurAction() if the selected/effective EID are not valid
v1.47
2026-10-30 12:03:43 +00:00
Jake Turner
a679886609
Update the Prev/Next buttons state on capture load
...
- added helper updateStepNextPrevButtonState() to unify setting the state
2026-10-30 11:38:57 +00:00
baldurk
b0c749c86c
Use correct context for shader debugging programs
2026-10-29 17:33:21 +00:00
baldurk
8e0a313621
Fix potential crash if an empty set of states is debugged
2026-10-29 17:33:21 +00:00
baldurk
29822109bd
Set GL marker regions on consistent context
2026-10-29 17:33:21 +00:00
baldurk
d059e150b6
Bind shader debug program for uniform setting
2026-10-29 17:33:21 +00:00
baldurk
2c39ab7138
Don't fetch sampler properties for texture buffer bindings
2026-10-29 17:33:21 +00:00
baldurk
10f9c2b471
Properly push and pop copy read buffer binding
2026-10-29 17:33:21 +00:00