Debug web server (part 4) – Its mature!

Some time ago I blogged about the use of a debug server in our 3D game engine. In a retrospective I use it quite extensively. Mostly to check on the logging as it very useful with all those nice colors and hyperlinks to directly see whats happening. Or by simply checking what is loaded.

Also a while ago I showed some basic benchmark (or profiling). Just a timeline display that shows how longs certain events like the update and rendering take. Also useful, but I didn’t like the fact that I had a separate application to visualize this timeline. So I finally decided to integrate this part on my debug web server, partly in JavaScript as I wanted to be able to pan and zoom around.

And here is the result, a simple to use timeline view to quickly see what is taking up too much time.

Further more I have lots of information that I can display, including files and shaders with basic syntax highlighting, documentation with collapsible sections for various items that I can use within my games.

Memory usage and render statistics are also part of the interface. It’s basically one easy to access pile of sorted data. And the HTML output is easy to create, easy to extend, user friendly, and as a bonus, it runs in any browser and you don’t need extra software except a browser – which everyone has.

Note: this web server that spits out HTML is not available publicly, it’s just a means to visualize data that normally is hidden deep inside the system.