i'm making a game engine
intro
As friends wanted to make a video game with me, i searched a way to make a game along doing low level stuff, the idea of making a game engine then comes to my mind and after talking a bit we decided to do it. Now here we are, making a game engine.
the base
We want a full game engine with editor and stuff, and I also wanted modularity. So we divided the engine into modules and each module go into its own shared object (.dll on window/.so on linux).
The basic modules we need to create are
- core (the main module that load other)
- renderer
- input manager
- asset loader
- audio manager
- GUI
- editor
So the idea is simple module are separate files and we can strip some on release (the editor is not needed for example)
The archutecture of the file is as folows
bgame/ : game specific stuff
bin/ : game specific binaries
bgame(.dll/.so) : the game's code
models/
stuff.basset
bin/
SDL3(.dll/.so)
bengine(.dll/.so) : the main core module
renderer(.dll/.so) the renderer
...
blauncher(.exe) : the launcher that load bengine
the asset format
To simplify the loading process we decidied to use a custom asset format : basset
to be continued
In the next post i’ll explain in more detail the engine’s working and how far we are