ASCII Game Engine


Role: Game Engine Programmer
Tools: C++, SFML, & Visual Studio
Duration: Spring 2022

Platform: Windows 10, Linux, & MacOS
Project Status: Complete


Project Description

 Under the mentorship of Mark Claypool, I was able to create a fully functional, text-based game engine based on the Dragonfly Engine. My game engine contains all the components of the Dragonfly Engine (plus a few more) and was built entirely from scratch. The engine can display and animate objects, handle object collisions, handle physics, handle input from the mouse and keyboard, record errors, and play sounds/music.
 My engine can also be used to create games, as demonstrated in my game, Double Crossed. This project taught me a lot about game engine architecture, the intricacies of how game engines function, and applying the singleton design pattern, all while allowing me to expand my knowledge of C++.

What I Learned

  • The inner workings of a game engine: I learned about how to design for and implement the singleton design pattern and how to create event systems and allow for custom events.
  • How to use the Simple and Fast Multimedia Library (SFML) to display text-based graphics.
  • How to test game engine functions using Test Driven Development (TDD).
  • How to display custom GameObjects and their attributes in the game world.
Website made by Tate Donnelly