FPS was my first attempt at working in 3D. My partner Matt DeNovio and I began this project with a goal to build a basic frame work for a first person shooter style game, while at the same time learning about 3D physics and the rendering pipeline. The project was challenging and fun, providing us with insights into the world of 3D games.
The project focused on a lot building our own 3D math library. Some of the elements we built were, Vectors, Matrixes, and Quaternions. Once we built our functioning math library, we began implementing the rendering and were able to render and transform objects in the world. We used and octree for spatial partitioning and implemented collision detection using SAT. FPS consisted of a well-structured code base that allowed for a basic first person style game in OpenGL.