top of page

Cobalt Engine

This project was my first large system with numerous components therefore, I learnt a lot about how important a good neat architecture is so everything fits seamlessly together.

Context

This project was completed in a group of 4 over 2 semesters. It was somewhat based on the architecture of Altitude Awaits although we did a complete overhaul to improve the architecture. We also developed a simulation using this engine that displays realistic physics and an emotional AI system.

Development

Our largest obstacle for this project was to first get the correct architecture structure for the simulation engine that allowed us to easily fit and modify all of the components. The modularity of each component was one of the most important factors, as a component's independence makes for much easier troubleshooting and future modification. Throughout the development we ensured that the code was all properly documented so that we could understand what we wrote later on.

Tools

The project was written in C++ using Microsoft Visual Studio. We collaborated on the project using GitHub. We decided to use GLFW for our rendering pipeline as we had experience with it previously and it is more current. We also used Blender for developing the 3D models.

Final Product

Overall, we developed a complete system that allows a user to create their own simulations. This system includes the basics such as an OBJ loader, renderer, lighting, entity component system (EnTT), texture loader, LUA scripting, physics, and more. It also has some extras such as the template for a Fuzzy Cognitive Map, a template for AI states, an affordance system, a water system, animations, and more.

bottom of page