HOMEBLOGDEVLOG

Devlog Entries

Wrap application + input manager / quitting

Adam C. Clifton
28 Dec 2025

Currently it's been a pain to shutdown the game.

Either Alt+F4 (which I've accidentally killed the wrong app once or twice) or switch to the terminal window and and hit ctrl+c.

So I've set it up so i can just hit escape to do so.

I had to dig around a bit to remember how to shutdown the game, and refreshingly my engine already had support for it. Just call ApplicationManager::QueueDestroy() and the game will cleanup everything (like waiting for threads to finish, and unloading assets) and then shutdown.

While shutdown and input handling is already implemented in my game engine, I did have to do a little work to expose the old C functionality to the new NLL code. But that was very straightforward wrapping.


Port over gui sprite and gui button

Adam C. Clifton
28 Dec 2025

As a step towards making this a real game, I need to be able to draw sprites and click buttons.

This functionality is basically available in the legacy code, so it was just a matter of exposing it to the new custom language the game is written in.

For the GuiButtons, they did exist in legacy code, but I decided to rewrite them from scratch. But it was only a small ammount of work, as a button is a composite of two images (unpressed and pressed) and a text label on top. To handle clicks the Gui element can just be flagged as clickable, and the engine handles the rest.


First "real" UI

Adam C. Clifton
28 Dec 2025

As the first pass of "real" UI, the game can now transition to different screens.

While they are both very sparse and have zero functionality, the game will now launch into a title screen, and then transition to the main game screen after clicking a button.

On the main game screen there's a top bar with a slight gradient and rounded edges, this is the first "art" created for the game. Everything else so far has been from older games of mine, or free assets.



Newer devlogs
© Numbat Logic Pty Ltd 2014 - 2026