Graphics "engine" in C++ and OpenGL