Particle system and camera control

Made for a course in Computer Graphics I attended on my Bachelor's, this project was made in collaboration with two other students, using C++ and OpenGL/GLUT. I was responsible for the spark particle effects, the camera control and the overall object-oriented architecture. The model was just a free OBJ file we found on the internet, which we loaded in to make things look a bit more lively. Since this project was also one of my first meetings with C++, I obviously made a lot of mistakes due to lack of knowledge. While it is free of memory leaks (I had read about heap vs. stack allocation and such beforehand), I was not very schooled in the use of constness, inline functions and other nifty things, so the code is not pretty enough to be shared until I can clean it up a bit.

On the other hand, I do think I succeeded in creating a pretty cool camera control. The camera movement shown was made by selecting twenty or so key points by moving around in the scene, and intermediate points between these were created real-time using B-splines. When moving the camera, I would then interpolate between these points using Slerp and quaternions, while doing some calculations to keep the velocity steady.