We designed and developed a C++ library that enables users to create complex scenes in OpenGL using only a few lines of code.

To simplify OpenGL, we leveraged object oriented programming paradigms to abstract rendering logic away from the user so that they can design scenes and manipulate objects more easily. Our library has built-in shaders for Blinn-Phong shading and for shadows, debugging tools, key-controls to navigate the 3D scene, and methods to add and manipulate objects and change the lighting. SimpleGL also leverages geometry instancing under the hood to allow users to duplicate vertices efficiently.

This work was done in collaboration with Yuxuan Mei and Crystal Ren as part of my C++ Design course, taught by Prof. Bjarne Stroustrup, who created C++.