I was inspired by Irrlicht for a very long time, about seven years ago I wrote my first Hello World C++ program using Irrlicht. Irrlicht was fun to play with and try to learn graphics programming. However, I felt like in some ways I was too much of a noob to understand how it all worked.
This motivated me to writing a game engine from scratch, using OpenGL 3.2+- 4.x Programmable Pipeline and using Newton Game Dynamics for the physics engine. I wrote a simple C++ API because I felt that the Irrlicht API was too confusing for beginners. I later began thinking about if it was possible to make a minimalist game engine, hints the name. The new aim of the project is to make a fully functional game engine with the simplest, smallest code foot print.
In a way, this project rejects everything that the game industry demands by imposing limitations on a fundamental level.
Features of the Engine
- The engine loads OBJ (static) and MD5 (animated) objects and gives you full access to writing GLSL shaders, in fact you have to write a shader for everything.
- The engine is integrated with Newton Game Dynamics, there is a PhysicsObject class for rigid body support
- The engine can load .BMP and .DDS images for UV texturing
- Text Overlay support
- Keybinding support
- Dynamic Frustum Culling using Octrees
- All rotations use Quaternions
- !No sound or click detection yet implemented !
Current code is an Alpha release and the API is going to change, I need to make it even simpler. I want to wrap the API in python, what do you guys think?
If you are the curious type and like to learn check out the project on github. https://github.com/Aaron-SP/minGE