-
-
Notifications
You must be signed in to change notification settings - Fork 53
Description
Describe the bug
I am unable to use Renderdoc with a python program using wgpu-py.
To Reproduce
Run a program using wgpu-py thrrough RenderDoc and try to capture a frame: it is not possible because it says "API: none", also the capture buttons stays grayed out.
Observed behavior
Using the Renderdoc "Capture Child Processes" option makes a little difference: the Renderdoc text overlays starts on the python's app graphics view but hangs after a few frames. F12 capture feature does not work.
The documentation says:
**You can use adapter.request_device_sync() to provide a directory path where a trace of all API calls will be written. This trace can then be used to re-play your use-case elsewhere (it’s cross-platform).
Also see wgpu-core’s section on debugging: https://github.com/gfx-rs/wgpu/wiki/Debugging-wgpu-Applications**
but I can't find a way to tell to adapter.request_device_sync() to use a such a path.
By inspecting the signature of it by doing:
import inspect
ADAPTER = wgpu.gpu.request_adapter_sync(power_preference = "high-performance")
print(inspect.signature(ADAPTER.request_device_sync))
what I get is:
(*, label: 'str' = '', required_features: 'List[enums.FeatureName]' = [], required_limits: 'Dict[str, Union[None, int]]' = {}, default_queue: 'structs.QueueDescriptor' = {}) -> 'GPUDevice'
which does not help me understanding what to do.
Screenshots
I attach a screenshot of what I see during this process:
Your environment
Windows 11
pygame 2.6.1 (SDL 2.28.4, Python 3.13.5)
NVIDIA RTX 2000 Ada Generation (DiscreteGPU) via Vulkan
Package Version
altgraph 0.17.4
cffi 1.17.1
glfw 2.9.0
imageio 2.37.0
numpy 2.3.2
packaging 25.0
pefile 2024.8.26
pillow 11.3.0
pip 25.2
pycparser 2.22
pygame 2.6.1
pyglm 2.8.2
pyinstaller 6.15.0
pyinstaller-hooks-contrib 2025.8
pywin32-ctypes 0.2.3
rendercanvas 2.2.0
setuptools 80.9.0
sniffio 1.3.1
wgpu 0.23.0
Any suggestion is welcome, thanks!