In our implementation of particle systems, the following particle systems were created:
Furthermore, these additional features are also included:
These features can all be seen in the following video showcase:
Proof of >1000 particles simulated and rendered at over 30 FPS:
Image 1: Water simulation
Image 2: Fire simulation
Image 3: Magic spell simulation
Image 4: Snow simulation
The code we wrote for this assignment can all be seen at the following link:
We used C++ (OpenGL, SDL2, and GLM) to complete this assignment.
The main difficulty we encountered in attempting a feature of this assignment was in trying to implement textured particles by drawing quads at each particle's position. In the end, we did not finish this feature, but did make progress toward it by creating a Quad class and working on getting a draw function for Quads to be operational.
Other smaller difficulties we encountered included figuring out how best to organize classes within our code to include different types and shapes of Emitters and different objects within the scene, as well as figuring out a method for making the fire particles move more realistically after spawning.
Of course, time management is always a difficulty as well, but we got as much done as we could in the time before the assignment was due and are satisfied with what we were able to complete. Additionally, we hope to find time after the due date to continue playing with our Particle Simulation!