Written using C++/OpenGL