What:
Fireworks is a small Pico-8 visual sketch simulating colorful fireworks displays in a dark night sky. Little creatures consume the ground, overcoming changes in the landscape and using it to launch new fireworks.
Why:
The goal was to explore motion, timing, and color blending and wayfinding within Pico-8’s tight limitations. I wanted to create something visually satisfying that could loop endlessly without interaction as relaxing background piece. It also served as an experiment in how to make complex, organic movement feel natural using very simple math.
How:
Each firework follows a short life cycle:
Consume: Creatures eat the landscape, changing it
Launch: A single particle shoots upward with random speed and direction.
Burst: At its peak, it spawns multiple child particles that spread radially with randomized velocities.
Fade: Particles fade and fall using gravity and color cycling to create soft trails.
Restore: The cycle is repeated as the fallen particles are added back to the landscape.
Behind the scenes:
Position and velocity are stored in lightweight arrays for speed and memory efficiency.
Color transitions are handled using Pico-8’s palette cycling to simulate glow and decay.
Update logic ensures new fireworks trigger just as old ones fade, creating a seamless loop.
Timing randomness keeps each display feeling spontaneous.