For this assignment, you are to extend the concepts that you developed in your bouncing ball project to a large-scale particle system simulation. Your project should include at least one particle generator, and your particles should be able to at least bounce off of fixed polygonal faces. An easy and very effective extension is to make it possible for the particles to bounce off of spherical obstacles. The particle generator should generate unique particles, with attributes drawn from probability distributions chosen appropriately for each particle attribute. Attributes that should be treated in this way should include at least initial position and velocity, mass, lifespan and color. You can use your imagination to come up with other possibilities.
Note that I provide the source code for a function gauss(). It returns a normally distributed random number drawn from a distribution with mean and standard deviation that you specify as parameters.