
Fireworks Mayhem
Warning! This project renders very slowly!
This project tries to emulate the look of fireworks with realistic lit smoke that correspond to the fireworks.
The technique heavily utilizes the power of mulitiple layers of particles to create a natural look and is similar to the Fireworks Cascade project.
First, the "fireworks" layer was created. Press the 'u' key to see the keyframed parameters on the layer. It basically contains a number of short bursts of particles at different positions in space and with different colors - by quickly moving the emitter between each burst it looks like multiple emitters are used. The fireworks themselves are pretty straightforward explosions with some gravity to pull them down. They emit Aux particles for trails.
Once the "fireworks" layer was finished, it was duplicated and the duplicate was named "smoke". In the smoke layer, the main particle size was changed to 0 so it is invisible. Then the Aux particle type was changed to Smokelet and the Aux>Particles/sec was decreased and size was adjusted to look like realistic smoke trails. The smoke layer was placed behind the fireworks. All parameters that were keyframed in the "fireworks" layer was linked with expression from the smoke layer so they could be tweaked at one place.
To light the smoke, a second duplicate of "fireworks" was made. This layer was called "lights". Here, the Aux particles were completely shut off and the main particles where increased radically in size and with full feather to create large flickering "blobs" that correspond exactly to the main particles in the "fireworks" layer. This layer was then used as an Alpha Matte for the smoke layer. The resulting effect is that the particles in the "fireworks" layer seem to light the smoke.
At this point I was not really satisfied with the lighting of the smoke because the technique with an Alpha Matte does not allow for coloring of the smoke. To fix this the "lights" layer was duplicated and called "glows". It was set to use the Tranfer Mode "Linear Light" to allow some colorisation of the smoke based on the nearby fireworks.