2D Engine in C++


The goal

Creating a 2D engine and a small game to prove that it works. By using Open GL as a graphics renderer and some Game Programming Patterns (Robert Nystrom), Pengo an 80's arcade came to life.


The process

As mentioned above, Game Programming Patterns, a book written by Robert Nystrom, was often the red wire through this project. The following patterns were implemented in the engine:

Other things added is the A* algorithm, but simplified. This algorithm is used for the enemy to travel towards its prey. Also the maze is procedurally generated by using the Prim's algorithm.

The Game Loop.


Conclusion and take aways

This was probably one of the better projects in order to understand engine design and get a better grasp on C++. By making the game I got to know two new algorithms which I never implemented before.