A waterfront fireworks show behaves less like art and more like a live physics exam. Each shell is assigned a height, a delay, and a color sequence before it ever touches a launch tube, turning the sky and the water surface into fixed coordinates in a three dimensional grid.
The harsh truth for anyone who thinks it is random is this: every burst is an answer to an equation. Designers start with the required apex altitude, then work backward through projectile motion, using muzzle velocity, launch angle, and gravitational acceleration. Fuse burn rate, a product of combustion chemistry and grain geometry, dictates the time between lift charge ignition and the burst charge reaching its programmed height. Short fuses give tight, low crowns. Longer fuses push the same shell higher, where spread and drift can be predicted with basic kinematics.
Most spectators assume the water simply adds romance. It actually adds constraints. Reflections turn the surface into a horizontal mirror plane, so designers model not just the shell trajectory but the apparent duplicate arc in the water. To keep bursts from vanishing into smoke or drifting behind buildings, show software runs something close to a ballistics solver, ingesting wind speed, humidity, and safety radius. The result is a stack of launch commands, fired by electronic sequencers in millisecond intervals, that makes the shoreline feel chaotic while the math underneath stays brutally orderly.