Commit Graph

16568 Commits

Author SHA1 Message Date
baldurk 45eabffb54 Update mesh viewer to allow better customisation. Closes #1811 2025-12-08 18:24:19 +00:00
baldurk 5b1b57d703 Add a dialog for configuring unprojection parameters 2025-12-08 15:50:17 +00:00
baldurk b0b14c1b7b Add a dialog for customising camera controls in mesh viewer 2025-12-08 15:50:17 +00:00
baldurk 7e518e813c Add support for fully customised mesh viewer controls 2025-12-08 15:50:17 +00:00
baldurk 071c62ee00 Add API to control the display camera's near and far planes
* This is separate from the near/far used to unproject rasterizer output vertex
  data.
2025-12-08 15:50:17 +00:00
baldurk 19cb12847a Don't replay RP suspend/resume and use store/load
* Suspend/resume must all happen in the same submit so we can't combine it with
  our own work or submit individual command buffers for work. Suspending and
  resuming is semantically equivalent to storing and loading so we can make this
  transformation without affecting correctness.
2025-12-08 15:24:05 +00:00
baldurk 762fc1b445 Add pipeline bit to remove validation message 2025-12-08 15:22:58 +00:00
baldurk 83b1638174 Silence warning 2025-12-08 13:42:08 +00:00
Jonathan Glines 2b22a0877a Sync GPU before decoding NVIDIA Nsight Perf SDK counters on D3D11
Syncing the GPU before decoding counters resolves an
"NVPA_STATUS_INSUFFICIENT_SPACE" error when collecting counters for
D3D11 applications with many event ranges.
2025-12-05 02:36:04 +09:00
Jake Turner c2015de391 Resource Usage UI changes
Add a column that shows the parent marker for the event range (by default the end event ID)
Add an option to prevent combining resource usage across markers (group by marker)
The tooltip for a resource usage entry contains the full marker path
2025-12-03 11:20:23 +13:00
Jake Turner 728ac77bf3 Fix D3D12 debug error when setting constants in EI
For instance would trigger when setting a single 32-bit root constant
Do not need to call resize_for_index() on constants because SetConstants() will handle any resizing that is required
2025-12-03 11:20:23 +13:00
Jake Turner abbe6d128a D3D12 EI test for setting a single 32-bit root constant 2025-12-03 11:20:19 +13:00
Vladislav Korytsko 8530da8274 Fix dataSize calculation in WriteToSubresource
Corrects width, height, and depth calculation in WriteToSubresource for the specified subresource when storing provided source data blob. Using base resource dimensions could have led to source-data read access violation.
Also updates corresponding test to validate subresource modification.
2025-12-03 05:56:55 +09:00
baldurk 7a2af108ad Remove pipes which can randomly fail apparently
* Previously `git log --oneline | grep -v 7a064ae | head -n 100` was throwing an
  error `grep: write error: Broken pipe` which as far as I can tell is working
  as intended and can't be fixed. So we remove pipes and use temporary files
  like animals.
2025-12-02 20:10:20 +00:00
baldurk 372aae1381 Add config option for vulkan GPU VA 2025-12-02 14:21:55 +00:00
baldurk c4f35d45cc Fix compilation on old linux compilers 2025-12-02 13:10:34 +00:00
baldurk 09a0c34979 Add manual implicit bias path for Android 2025-12-02 12:37:19 +00:00
baldurk d89b763e49 Fix issues for Android debugging 2025-12-02 12:37:19 +00:00
baldurk ac8b786476 Remove GL shader debugging config variable 2025-12-02 12:37:19 +00:00
baldurk 466f8f6738 Add documentation for GL shader debugging 2025-12-02 12:37:19 +00:00
baldurk e85651545f Add test of GL shader debugging 2025-12-02 12:17:36 +00:00
baldurk 910f7ab65f Handle matrices when copying program attribute bindings 2025-12-02 12:17:36 +00:00
baldurk 7c438edd2a Fix column lookup via access chain in SPIR-V debugging 2025-12-02 12:17:36 +00:00
baldurk 0a15153330 Add a compute debugging UI selector to the GL pipeline state view 2025-12-02 12:17:36 +00:00
baldurk 0f70937707 Dump input fetcher & SPIR-V to disk based on config option 2025-12-02 12:17:36 +00:00
baldurk 01d305eb4e Detect gl_PerVertex for GL shaders 2025-12-02 12:17:36 +00:00
baldurk 88cf6f295a Add vertex shader debugging setup on GL 2025-12-02 12:17:36 +00:00
baldurk d550195e4c Add compute shader debugging setup on GL 2025-12-02 12:17:36 +00:00
baldurk ddf19304b7 Handle resources encountered in the SPIR-V debugging that don't exist
* It is common for drivers to dead-code eliminate resources and they will not
  show up in reflection at all and will not have a binding. For these we will
  still encounter them when debugging so need to ensure we handle that case.
* This unfortunately makes a previously illegal/error-checked case silently
  continue, so we add API-specific asserts.
2025-12-02 12:17:35 +00:00
baldurk 7490abedcf Remap locations/binds back to match real shader as needed 2025-12-02 12:17:35 +00:00
baldurk 8ed7c14556 Try to compile GLSL shaders to SPIR-V to enable debugging 2025-12-02 12:17:35 +00:00
baldurk c4f71f6223 Support plain bare uniforms in GL SPIR-V 2025-12-02 12:17:35 +00:00
baldurk 02096dd75e Add input fetcher generation for GL shader debugging 2025-12-02 12:17:35 +00:00
baldurk 55e8c42f50 Require SSBOs & CS for shader debuggging at minimum 2025-12-02 12:17:35 +00:00
baldurk 5a4b4dca03 Add GL API wrapper skeleton, based on vulkan wrapper
* We keep some of the threading code rather than removing it, but this will run
  single threaded.
2025-12-02 12:17:34 +00:00
baldurk e66dc5cd6b Update GL headers to latest as of 2025-11-14 2025-12-02 12:17:34 +00:00
baldurk d62d2d8848 Add CPU side handling of math/sampling operations 2025-12-02 12:17:33 +00:00
baldurk 118baf6432 Add GL versions of shader debug pixel shaders 2025-12-01 17:25:57 +00:00
baldurk 22979a8696 Allow shader debug vertex shader to compile on GL or Vulkan 2025-12-01 17:25:57 +00:00
baldurk 6749e47177 Move shader debugging replay function stubs into new file 2025-12-01 17:25:57 +00:00
baldurk 23abdbab90 Add GL API wrapper skeleton, based on vulkan wrapper
* We keep some of the threading code rather than removing it, but this will run
  single threaded.
2025-12-01 17:25:57 +00:00
baldurk 84c1391aeb Add custom glslang feature to allow specifying I/O automap base location 2025-12-01 17:25:56 +00:00
baldurk 2b687a56c8 Move SPIR-V debugging input fetch lane data to SPIR-V headers 2025-12-01 17:25:56 +00:00
baldurk 04866327cc Move Vec3i to common header 2025-12-01 17:25:56 +00:00
baldurk bbd5655cfe Rename some config variables to better be agnostic over SPIR-V and DXIL 2025-12-01 17:25:56 +00:00
Jake Turner 22b9e1ded2 Show DXIL debugger missing resources as DebugMessage instead of RDCERR 2025-11-30 06:42:02 +13:00
Jake Turner defb87127c Fix DXIL Debug crash in ExtractVal on invalid ShaderVariable
0-sized struct
2025-11-30 06:42:02 +13:00
baldurk f5e9903860 Don't return video interface if real interface is missing. Closes #3735 2025-11-27 15:20:44 +00:00
baldurk c61e3f72f0 Try to make CI check for commit messages more robust
* For some reason the commit message check failed to detect a bad message on a
  PR commit. The only clue is a 'broken pipe' message from tail in the log but
  it doesn't reproduce on another repository with the same scripts :(.
* Temporarily ignore the bad commit from future checks until it drops out of the
  most recent 100.
2025-11-27 14:10:13 +00:00
陈飞越 7a064ae915 Fix gpu driver crash caused by pixel history
Force load renderpass contains only one subpass, if not set subpass,
the subpass passed to gpu driver mismatch the actual subpass,
and then causes crash.
2025-11-27 22:22:48 +09:00