Firework Simulation
Houdini
For my graduate-level graphics course CIS 5620: Computer Animation, I worked with the Houdini FX software in order to create a node-based, procedural firework simulation from scratch. This project served as my first time working with Houdini and VEX code. I thoroughly enjoyed experimenting with different physics, color, and particle settings in order to create the final animated product.
These were 2 main components of the dynamic simulation:
-
Nodes
-
Split nodes
-
Group nodes
-
Collect nodes
-
-
Networks
-
Used Geometry network
-
Particle operator network
-
Shader operator network
-
These components were used to build a Firework Particle System which can be broken down as follows:
-
Created a particle emitter and system for the firework projectiles
-
Shell particles created using location node to represent pre-explosion fireworks
-
Particle groups used to collect the "dead" shell particles post-explosion and convert them into spark particles using POP Group and POP Replicate nodes
-
-
Applied physics to boost particle realism
-
Added air drag force to particles
-
Adjusted inherited impact velocity to spark particles mimic additive explosive force from shell particles velocities
-
Added variance to spark particles to reflect scale of explosion via the randomness and magnitude
-
-
Added trail of smoke to shell particles
-
Added POP Color node to apply color to particles
-
Rendered final simulation video using Mantra renderer