For my second CG 2 project at RIT, I proposed to design and build a simple cross-platform game engine in C++. I did it mostly on Linux using VIM, which was of course a blast. The engine included an adapter layer that essentially abstracted away the graphics API when implementing the game.
Through this project, I succeeded in exploring the challenges of creating even the simplest game engine. As one might expect, it was a feat far more challenging than I had at first imagined. Despite this, I successfully created a POC prototype using the engine that built and ran on Linux, Unix, and Windows. It’s a game that the computer plays against itself over and over in an endless battle for spherical domination.
Fun fact: The game is simple and 100% deterministic and should always end in a tie, but through the magic of Chaos Theory it always presents the user with a vivid and unpredictable battle of cloud-like patterns.
In short: Computers are wicked cool