Learn how to create a 2D platformer shooter in an arcade style with C and OpenGL.
The purpose of this game, engine, and series is to teach how to create a game without using a 3rd party engine.
The point is to show that one does not need to build every feature or create the most complex, general solutions to problems in order to have a shippable product.
- The most efficient or flexible way to solve problem X.
- A replacement for a general 3rd party engine.
Everything on this list will be or has been implemented in the video series, and exists in one form or another in this codebase.
- Simple sprite rendering with OpenGL.
- Simple physics integration.
- AABB discrete and continuous collision detection and response.
- Custom serialisation (handling configuration file).
- Sound mixing.
- Simple entity system.
I have created or are working on these features in my current game project which uses a forked version of this engine. If there is enough interest I may create tutorials for them in the future. I will post a video and poll at the end of the current series.
- Batch renderer.
- Tile-based levels.
- Custom memory allocators.
- Custom vector math library.
- Custom immediate mode UI library.
- Scene management.
- Decoupled game loop.