Commit Graph
17141 Commits
Author SHA1 Message Date
baldurk 229c4c8746 Avoid polluting globals with completion objects 2026-08-13 17:46:40 +01:00
baldurk 836a5da7fa Re-organise python shell to be dockable and dock REPL at bottom 2026-08-13 17:46:40 +01:00
baldurk 60b989f2b7 Give extensions their own OutputRedirector object to identify them 2026-08-13 17:46:40 +01:00
baldurk 3ff393c91f Add option to launch/wait for debugger on python contexts 2026-08-13 17:46:40 +01:00
baldurk 3dfd829331 Initialise debugpy on a thread to reduce startup time 2026-08-13 17:46:40 +01:00
baldurk d71827d6a1 Load debugpy when possible to allow python debugging in-program 2026-08-13 17:46:39 +01:00
baldurk 53e5e718b1 Copy whichever libffi version the python installation needs 2026-08-13 17:46:39 +01:00
baldurk 9fc3c3cdcd Use sys.settrace instead of PyEval_SetTrace for better compatibility 2026-08-13 17:46:39 +01:00
baldurk c15a5c2c66 Add os.add_dll_directory cruft to verify-docstrings 2026-08-13 17:46:39 +01:00
baldurk e5f395497c Allow custom python folder to contain platform-subfolders
* This is not the default python layout but is convenient for sharing the
  standard library .zip and include folder with separate binary folders per-
  platform. The layout mirrors what we include in the repository.
2026-08-13 17:46:39 +01:00
baldurk 7e11dc9cc5 Allow loading a custom PySide2 with a customised python location
* This is expected to be in a pyside\ subfolder, with an organisation matching
  our default setup.
* We also now copy the shiboken2 python module (if it exists) as required by new
  pyside2 versions.
2026-08-13 17:46:39 +01:00
baldurk 388f914b3a Add a script for building a pythonXY.zip
* This is the only thing missing from an installed version of python to be able
  to build against it, so it's convenient to rebuild it instead of fetching it
  separately from the embeddable distribution
2026-08-13 17:46:39 +01:00
baldurk 965d788fe5 Add a settings window entry to add extra python stubs paths 2026-08-13 17:46:39 +01:00
baldurk 26a84363b8 Embed stubsgen.py and automatically generate stubs into user folder
* We create both a stubs folder for each specific version, and a 'latest' that
  is updated by newer RD versions.
* For development, the stubs will be regenerated any time the git commit hash
  changes for development builds.
2026-08-13 17:46:39 +01:00
baldurk 9223971536 Remove old stubs generation code and replace with our own script
* This is smaller and easier to maintain, and adds functionality like resolving
  circular dependencies to be able to import the stubs as-is on python 3.6+
2026-08-13 17:46:38 +01:00
baldurk a869e5c4f8 Add natvis for python 3.8 2026-08-13 17:46:38 +01:00
baldurk 8d6d307998 Don't apply sphinx paramlinks to Callable[] lines 2026-08-13 17:46:38 +01:00
baldurk a23ee5f526 Change documentation for callbacks to use Callable[] 2026-08-13 17:46:38 +01:00
baldurk 7567cc11c9 Fix GC collection of python contexts 2026-08-13 17:46:38 +01:00
baldurk 9bb79a0594 Demote error to warning on unbalanced markers
* Some markers from the application may be unbalanced, or it might be unbalanced
  if we began the capture with some markers already open (e.g. due to a push/pop
  around present).
2026-08-13 17:46:38 +01:00
Danylo Piliaiev 6c7c9e16b8 Check both resolveImageView and resolveMode before referencing the view
When MRTSS is used, resolveImageView must be NULL since resolve happens
into the same image:

> VUID-VkRenderingAttachmentInfo-imageView-06863
> If imageView is not VK_NULL_HANDLE, resolveMode is not VK_RESOLVE_MODE_NONE,
> the pNext chain of VkRenderingInfo includes a VkMultisampledRenderToSingleSampledInfoEXT
> structure with the multisampledRenderToSingleSampledEnable field equal to
> VK_TRUE, and imageView has a sample count of VK_SAMPLE_COUNT_1_BIT,
> resolveImageView must be VK_NULL_HANDLE

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
2026-08-13 21:48:54 +09:00
baldurk 717d23e770 Match SPIR-V debugger structs change in GL shader debugging 2026-08-11 16:50:13 +01:00
Jake Turner e807742444 Tweak RenderPass setup/usage in VK_Resource_Usage
Use the mainWindow RenderPass everywhere
2026-08-10 07:25:32 +01:00
Jake Turner 0219134aa8 Add test to D3D12_Parameter_Zoo for DXIL CST_CODE_CE_GEP (12)
DXC emits CST_CODE_CE_GEP for constants which are not in bounds
RenderDoc treats it the same as CST_CODE_CE_INBOUNDS_GEP (20)
2026-08-10 07:22:36 +01:00
baldurk 7db2264afa Set specialisation info if EXT shader object is used with task shaders 2026-08-07 16:26:34 +01:00
baldurk aa78f90d34 Sync before any map updates if we have already submitted GPU work 2026-08-07 16:26:34 +01:00
baldurk ef73eb2205 Allow matching debug variables directly before processing path
* Debug info could theoretically contain names which include path like
  characters including '.' or '[]' even though these wouldn't be valid
  identifier names. We assume this will not happen with names that are part of
  structures/arrays themselves but instead only happen if there's a single
  matching path.
2026-08-07 16:26:34 +01:00
baldurk a99a02c51b Add 'bind' to display of samplers in shader debugger
* If there is no set/space and no array index, a single number is unclear of
  what it actually means (when there is no sampler object, we don't have
  anything to refer to except the binding).
2026-08-07 16:26:33 +01:00
baldurk a322de964b Add source vars for samplers 2026-08-07 16:26:33 +01:00
baldurk 62b088319a Detect struct array strides from BDA pointer decorations 2026-08-07 16:26:33 +01:00
baldurk d3a366e759 Disable NV layer 2026-08-07 16:26:33 +01:00
baldurk bc52be931a Correctly handle debugging double PS inputs in SPIR-V 2026-08-07 16:26:33 +01:00
baldurk 5bcac1bfda Update from toolwindowmanager repository @ 984f7fb 2026-08-05 11:51:44 +01:00
baldurk 0db700e4a9 Remove pixel shader when fetching tess/GS out
* if rasterizerDiscardEnable is enabled we must not have a pixel shader.
2026-08-05 11:51:44 +01:00
baldurk 64c942c68a Include license and readme for sphinxcontrib-jquery 2026-08-05 10:52:06 +01:00
baldurk 0cb1000f26 In buffer viewer show tooltip on headers and elide from middle
* This helps with long names (e.g. structname.member) on scalars where the width
  of the data is not enough to show the full header name.
2026-08-05 10:46:13 +01:00
baldurk 28c6f55800 Custom render tooltip events in RDHeaderView
* Because Qt is awful at customising controls, the functions used to fetch the
  index of sections are not virtual so the internal QHeaderView version doesn't
  get the right sections when we have column grouping enabled.
2026-08-05 10:45:07 +01:00
baldurk 3b1a832a57 Fix moronic bullshit that broke V140 toolset on VS2026
* Newest VS2026 dropped support for the entirely working v140 tools for zero
  good reason: https://developercommunity.visualstudio.com/t/Visual-
  Studio-2026-188-update-removes-v/11121716
* This then breaks our CI since we can't install the toolset manually. After
  lots of dancing, this set of magic words seems to work for now, but who can
  say for how long.
2026-08-04 11:48:20 +01:00
baldurk 02e0f0983f Handle mutually recursive cycles in declared pointer types 2026-08-03 21:30:51 +01:00
baldurk c11d53b0d4 Handle mutually recursive pointer types in packing rules estimation 2026-08-03 21:15:19 +01:00
baldurk 1b9c13223f Check for all possible GL matrix types in buffer formatter. Closes #3878 2026-08-03 21:15:19 +01:00
baldurk fda6fc2322 Fix calculation of array size when calculating struct sizes
* Non-tightly packed arrays can be larger based on the stride than base size
  multiplied by element count, e.g. with a 4-byte uint with a 16-byte array
  stride.
2026-08-03 21:15:19 +01:00
baldurk 430286642d Mark OOB reads in cbuffers as truncated 2026-08-03 21:15:19 +01:00
baldurk 114222f0eb Check for extensions function pointers provided by layers. Closes #3877 2026-08-03 21:15:18 +01:00
nachocpol b857463968 Feedback from PR 2026-08-03 20:05:06 +09:00
nachocpol 0ba299366b Support old GEP type instructions 2026-08-03 20:05:06 +09:00
Jake Turner 4e59f62a96 During Loading replay replace D3D12ActionTreeNode with D3D12EventNode
D3D12EventNode contains all data for an Event during loading: APIEvent, ActionDescription, resource usage, debugMessages, annotations.
Action ID, Event ID is not computed whilst loading is happening.

At the end of Loading when the D3D12EventNode's have been flattened into linear submission order then the D3D12EventNode's are baked into RenderDoc replay APIEvents and Actions. Event IDs and Action IDs are assigned as part of the baking process
2026-07-30 16:36:02 +01:00
Jake Turner 5a1b2c23e1 Extend D3D12_Annotations test
- loose event annotation
  - a barrier at end of command buffer
  - at end of command buffer attached to CommandList Close
  - command buffer with no actions, just set marker
- annotations before/during/after ExecuteIndirect calls
2026-07-30 16:36:02 +01:00
Jake Turner c559aa64af Check indirect action names in D3D12_Execute_Indirect 2026-07-30 16:36:02 +01:00
Jake Turner 6df99e4d94 Extend python helper functions for D3D12 indirect action names 2026-07-30 16:35:53 +01:00