Working on packaging #renderdoc for @archlinux, and as it turns out, renderdoc does NOT like being built with LTO. Both qrenderdoc and renderdoccmd segfault immediately if built with LTO, at least on Arch.
Took me a couple hours to figure out, but now that I have, renderdoc should be landing in [extra] today.
Vulkan/DirectX beginners please use #Renderdoc. It can give you more insight on validation errors (like what's the value of a flag that is erroneous). I just fixed a bug for a fiverr client that was caused by a small code mistake but so hard to find without renderdoc's insight.
Nevermind, don't use renderdoc, I need fiverr money :^)
OK #RenderDoc is incredible.
Assuming you managed to dive through the insanity of the glslang API¹, you can actually debug a single fragment shader from their #GLSL form.
Being able to observe the exact values of everything is absolute bliss.
The debugger is basic but there is one incredible option: "Run forwards to NaN/Inf". This is going to be particularly useful to me and my gigantic shader full of nested loops.
Note: this is not possible with OpenGL.
I've been skeptic about #RenderDoc but the more I dig into it, the more I like it. Today while trying to make the shader debugger working, I found the shader editor (useful for live change debugging), and also the way to add a custom view on a texture by writing a custom shader snippet.
Typical use case, here I have a signed distance texture, and I'm using a custom #glsl fragment (the sdf debug color scheme from Inigo Quilez) to display it. I love this.
Got it working with UE5 on the weekend, so I can import a Renderdoc capture, extract the dispatches and debug it. Still pretty rough, but stepping through the UE5 Hi-Z build shader is awesome. Oh and the D3D12 capture is running in my Vulkan renderer! #UE5 #renderdoc
Over the holiday break I've been tinkering with #RenderDoc, trying to add D3D12 pixel history support. It's fun to see it starting to come together, though there's a lot still to test and fix. 😅
There's a distinct satisfaction of opening #RenderDoc to test if your resources are generating correctly, and they are. Like, I haven't developed the systems to use them yet, but they work now!
Cool feature that #RenderDoc has and #Xcode lacks (as far as I know):
Filtering all the draw calls where a particular resource is used.
(But if that resource is used as a render target at some point, Xcode's dependency graph is brilliant)
Content: #3dmodeling #maps #renderdoc #gamedev #godotengine #blender
Here's another 3D map I imported from online maps through RenderDoc.
Here is #Sydney.
#3dmodeling #maps #renderdoc #gamedev #godotengine #blender #sydney
Content: #3dmodeling #maps #renderdoc #gamedev #godotengine #blender
Probably the coolest thing I've learned this past week is that you can grab 3d images from online maps using renderdoc.
Here is #Seattle.
#3dmodeling #maps #renderdoc #seattle #gamedev #godotengine #blender
Doing 3D graphics debugging of web applications is a joy.
Can't get RenderDoc to attach to any browsers on any OS. NSight can attach to Chromium on Windows, and on Linux I need to first do frame capture through ApiTrace, and then do a replay through #RenderDoc to get something to look at 😵
And on MacOS I have no idea what I'm supposed to do 🤷
#opengl #webgl #rendering #renderdoc
Particle emission CS has a bug. Take a capture in #Renderdoc to debug...works fine. Great. Might be a driver bug.