Fimo Engine II: Module Lifecycle

Introduction It’s been a while since my last post, where I introduced a nice linker quirk 1, that allows us to collect a global list of resources, spanning multiple compilation units, at compile time into a single array. In this post, we will explore how we can utilize this trick to introduce the concept of a module, and how these can be combined to create a modular game engine. A lot had to happen behind the scenes, to bring this all together. Let’s start by answering the simple question: What is a module? ...

March 8, 2025 · 37 min · 7691 words · Gabriel Borrelli

Fimo Engine I: Auto Registration

What is fimo Recently, I have started working on a small game engine, which I named fimo. By “recently” I really mean “a couple of years ago”, and “started” should really be understood as me constantly restarting from scratch once I encountered some major design flaw or started to get bored…nevertheless I now settled on an in my humble opinion, interesting core architecture, with many challenged ahead of me. Some might question the utility of having projects that I not only never intend to bring to completion, but even frequently restart. To them, I would say, you’re right. I’m sorry, how dare a man have some hobbies and not spend all of their time for their sustenance and the greater good? ...

November 22, 2024 · 27 min · 5702 words · Gabriel Borrelli