Joey Kapusta

Gameplay Programmer

Shetland Engine

View the code

Summary

This is a simple 3D game engine written in C++ with OpenGL. Ball of Cthulhu was made in the engine as a tech demo. The engine uses a base game object type that is built into more complex objects. The objects can have a mesh attached, which will update with the parent. Meshes include lighting and texturing with shaders. Collisions are handled with an octree and a variety of collision algorithms.

My Contribution

I worked on a good variety of things for this project, only having one other person on the team. I handled entity AI, projectile physics, collision detection and its handling within the game logic, management of objects in the worldspace, and handling of game states and conditions. I also came up with the idea for the game.

Moving Forward

This project taught me a great deal about the rendering pipeline, as well as the complexities of raw engine-level code. It gave me a great respect for engine programmers, and knowledge that I never want to be one. While I understand the concepts, the practice of engine programming is difficult and often aggravating. While it is integral to making games, it gives none of the joy of the art. I'd much rather work toward the front end, programming the mechanics that the players will experience and enjoy. Despite that, I am proud of the hilarious monstrosity we created in Ball of Cthulhu.