RAD Debugger
github.com
github.com
Interestingly, it seems to have been primarily a Linux project at some point, but this released version only has Windows support. I'd also like to know what this release means for the project's future.
> What's after that?
>
> Tons of stuff. Tons and tons and tons of stuff.
> Debuggers have not substantially evolved since the first Turbo Debugger in 1988!
> For example, we have had GUI debuggers for 20 years now, and we can't see bitmaps! We can't hear sound buffers. We can't view vertex arrays.
> We can't graph values over time. We can't even load a debugging session from yesterday and review it! We have a long way to go.
> Debugging is desperate need of updating, and we see as a long term project. We'll be adding visualizers, new debugging workflows (step through code on multiple platforms at the same time for example), and new features for a long time.
Time Travel Debugging provided by WinDbgX doesn't count? Or are they talking about all of the commands executed, etc. along with that?
https://marketplace.visualstudio.com/items?itemName=VisualCP...
There's also a recent extension called Image Preview for path references:
https://devblogs.microsoft.com/visualstudio/working-with-ima...
This is a problem that extends beyond this submission and talk of debuggers. It's basically insurmountable for anyone who didn't use Google Reader to know what the experience is using it looked and felt like (and in a few months when it will no longer be possible to use Google Podcasts, there'll be another casualty).
Reading your comment, all I know is that Xcode lets you "view bitmaps in the debugger", but that's a pretty varied range of possibilities for someone who hasn't actually seen it.
Folks who are looking to have an impact would do well to document their setups and show how they actually get work done, lest we end up in a future where people don't know how to run a Python program[1] because nobody was ever explicit about it, instead relying on tacit familiarity.
1. <https://corecursive.com/brain-injury-with-jason-mcdonald/>
The answer even has a comment saying:
> Ages coding in Xcode and I never knew about this feature! This is awesome!!! Thanks a lot
We really have a problem in this industry about documenting institutional knowledge huh?
I kinda miss Lauterbach...
Being limited to windows makes it difficult to try out, and understand what it brings over existing debugger options.
https://pbs.twimg.com/media/GDnYJFOaQAAuNTq?format=jpg&name=...
(those are the urls from the Xeets; I didn't alter the query params, they came that way)
How is Bink video still a thing? Aren't the other well established codecs able to beat it?
Edit: Some answers here, if you believe their own stats: http://www.radgametools.com/bnkmain.htm
So far, the most exciting project to follow for this has been Cutter. However, I'd be easily sold on this once it gets Linux support. Thanks for making it open source. :)
- Godot will win over indie devs and start to become feature-comparable with Unreal and Unity. By the end of the decade, fewer corporate projects will choose Unreal or Unity and instead opt for internal forks of Godot. This is repeating the same formula the Blender-ization of 3D software packages did.
- Non-C++ engines such as Bevy will start to grow a large base of their own and step into the realm that Godot once occupied. Lots of use by hobbyists, especially those wanting to dive into lower level pieces and wanting to avoid C++isms.
- Epic Games Store won't reach a significant fraction of Steam's user base.
- Growth of Unreal and Unity will stall.
I'm not even so sure! I don't know which costs will trend towards zero.
If I had to make another prediction, though, it's that all the centuries of engineering that went into Unreal Engine will wind up being revealed as just solving for a local optima. Signs point to neural rendering and neural engines possibly being a thing, and if so, everything we've built so far is just legacy tech.
Wouldn't really call it launched, just in development publicly.
[1]: https://web.archive.org/web/20160806065601/http://www.radgam...
Looks like a massive undertaking. They should stick with Wayland only to limit the effort scope.
For example Wine supporting Wayland had to do a lot of relatively direct work with the protocols and it made sense there, but otherwise you can just use SDL or something similar or even a higher level toolkit like Qt.
A more relevant question might be what RAD debugger offers or plans to offer compared to Visual Studio C++ debugger. Based on http://web.archive.org/web/20230923095510/http://www.radgame... seems like an important part of motivation was providing Visual Studio quality or better debugging experience for Linux and console targets and doing that with single tool.
The fact that it’s MIT open source is incredible.
Font rendering feels off.
Toolbar lists are super compressed. Needs more vertices spacing. Underlined characters for shortcut hints is absolutely awful.
Various commands create kinda-sorta pop-ups that are really weird and atypical.
I’ve only played with it for a little bit. This is all surface level stuff. Not a big deal. But RemedyBG has a better UX.
But for instance, there are visible controls—they are available via a central command layer which fuzzy matches virtually every operation available in the debugger. This lister also in-place allows rebinding of any command. The panels don’t disappear when empty to avoid janky consequences that arise in traditional docking systems, like DearImGui’s & others. Panels and tabs are completely orthogonal. I plan to introduce a more familiar docking system which offers, in effect, fast paths for the more granular panel/tab operations.
But the overarching reason why I chose a from scratch UI layer is because DearImGui leads to more janky results and is much less-suited for the ambitions of the frontend. I don’t think the frontend would be nearly as solid had I chosen a different route.
Congrats and/or sorry. Lots of people definitely following this project closely and with great excitement!
> I don’t think anything you listed would qualify as “jank”, and rather your unfamiliarity with the system or non-standard/idiosyncratic designs
The line between unfamiliar and jank is awfully fuzzy! I'm always willing to try new things. Always a learning curve. But definitely felt a little lost and confused at a few things. Knowing about F1 helps a lot. There's no Detach option in the toolbar!
I also had issues with std::string not showing any value in the debugger. VS2022 and RemedyBG show the string just fine.
> That doesn’t apply to the “underline to hint @ shortcut” point, which has been a standard Windows UI principle since, well, before I was born…
Maybe it's a 4K rendering issue? The underlines are kindar fubar. Too high in the "descender area". And doesn't render wide enough. I mean look at those sad little pixels on Step Into! https://i.imgur.com/gasiauv.png Or how the underline on "Registers" makes the R look like a B. https://i.imgur.com/UnnIeAT.png
There's a lot of weird font spacing issues that kinda just make a lot of things hard to read.
Not, uh, that this matters at all in the grand scheme of things!
Amusingly I went to look for examples of how the underlines are rendering in other tools and... I couldn't find one? TIL this may not be a thing anymore? Whoa. (Windows 11)
> But the overarching reason why I chose a from scratch UI layer is because DearImGui leads to more janky results and is much less-suited for the ambitions of the frontend. I don’t think the frontend would be nearly as solid had I chosen a different route.
Dear ImGui definitely has it's "look". But RemedyBG is pretty slick and I'm not sure this is ultimately going to provide any significant capabilities other than a better visual style? Could be wrong! Look forward to seeing your ambitions realized!
All languages that have compilers able to produce PDB debug symbols, and in the future all those that can produce DWARF symbols.
That's not restricted just to C/C++ as the sibling comment suggests.