During my time in the university, one of the more fun and learning classess was programming computer graphics.
Other than learning the basics of computer graphics, we also had a larger scale project, where we had to create a basic scene with a object importer, simple lightning, camera navigation with collisions, animated texture and programming curves that served as paths! This was all done using C++ and OpenGL with some additional libraries such as freeGLUT, Assimp and libui.
Images from the project.