exengine, a hand-rolled C99 3D game engine

This is my very own 3D game engine. I have been making it for around 3 or so years. There’s too much to be noted here about it but I will cover some of the notable features below, for a more thorough coverage please refer to the README on github.

The core goal of exengine is to be lightweight and minimal, while also requiring few external dependencies. Currently the only dependency exengine requires you to obtain yourself is SDL2, there is however no need for this for Windows users.

The engine currently compiles on Linux, Windows and MacOS. Due to the deprecation of OpenGL, MacOS is no longer considered to be ‘supported’, but I do like to maintain functionality as best I can in secret.

#include "iqm.h"

This is my C implementation of an IQM model loader. It is pretty much feature complete and supports everything you would expect it to, animations, textures, colors, etc.

#include "collision.h"
#include "entity.h"

This is my implementation of Kasper Fauerbys paper. This is a very solid implementation and is currently being used in various game projects of mine. Here is a showcase of just how versatile it can be. For more media on the engine check out my YouTube channel.

#include "text.h"

I utilize my multi-channel signed distance field generator to render high quality font from a low-resolution bitmap.

Scrot Scrot Scrot Scrot