mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-05-13 21:40:41 +00:00
54 lines
2.7 KiB
Markdown
54 lines
2.7 KiB
Markdown
RenderDoc for Vulkan
|
|
========
|
|
|
|
These are the release notes for an early preview version of RenderDoc with Vulkan support. The intention is to have a reliable graphics debugger for 1.0 release of Vulkan, full details of the feature set are still to be determined.
|
|
|
|
Note that for 1.0 only a baseline feature set is to be supported, see below.
|
|
|
|
Please try the tool on your workloads or programs and report back bugs encountered or general feedback. Likewise feedback is welcome about where future work should be prioritised.
|
|
|
|
If you have any questions you can contact myself (baldurk@baldurk.org) or LunarG via LunarXchange.
|
|
|
|
Current Support
|
|
========
|
|
|
|
* A single VkInstance/VkQueue/VkDevice triple is supported.
|
|
* Capture and replay of single-frame captures (not full-program streams a la vktrace).
|
|
* On replay you can step into each vkQueueSubmit call to see the command buffers submitted, and step into them to browse through the commands.
|
|
* The pipeline state will be displayed at each command, showing the data contained in each member of the pipeline createinfo struct, as well as dynamic state.
|
|
* Simple disassembly/reflection of SPIR-V to determine which descriptors to read for read-only resources and uniform buffers. The uniform buffers will be listed separately and the member variables filled out.
|
|
* Texture display
|
|
* You can view mesh input data both as data and a 3D preview
|
|
* Mesh output data after vertex shader is fetched and displayed
|
|
* Pipeline export to HTML
|
|
* Render overlays like Drawcall highlight, wireframe, depth-test pass/fail etc
|
|
* Texture range auto-fit and histogram display
|
|
* Show resource usage of each image/buffer and where it's used in different parts of the pipeline during the frame.
|
|
* Threading should be pretty efficient - no heavy locks on common paths (outside of creation/deletion)
|
|
* Saving textures to file
|
|
|
|
Known Issues
|
|
========
|
|
|
|
* Memory/image barriers are as yet unverified, potentially could lead to bad capture or replay.
|
|
* Sparse images with mips or array slices will not properly replay
|
|
* Drawcall timings may be unreliable, and are also top-to-bottom of pipe each, so don't sum up accurately.
|
|
|
|
Future work, post 1.0
|
|
========
|
|
|
|
In no particular order, features that are not planned until after 1.0.
|
|
|
|
* More than one VkInstance/VkDevice/VkQueue triple
|
|
* Stepping inside vkCmdExecuteCommands
|
|
* Support for replaying captures on a different machine to where they were captured
|
|
* Shader debugging
|
|
* Sharing resources between different queues, and ownership changing hands
|
|
* Mesh output data after geometry and tessellation shaders
|
|
* Vertex picking
|
|
* Pixel history
|
|
* Custom visualisation shaders
|
|
* Linux support with Qt UI
|
|
* Shader edit & replace
|
|
* Mesh geometry/tessellation output capture
|