# Kinetic

A procedural Three.js physics playground with five experiments: a desert
explosion, tornado, balloon pop, water-drop impact, and Newton's cradle.

From this directory, run:

    python3 -m http.server 8000

Open http://localhost:8000 in a browser with WebGL 2 support.

Drag to orbit, scroll to zoom, and use the controls to pause, restart, change
playback speed, or adjust each experiment. Keyboard shortcuts: **Space** to
pause, **R** to restart, and **1–5** to switch scenes.

All geometry, materials, particles, and environment reflections are generated
in code. Three.js 0.169.0 and its OrbitControls are vendored locally, with the
upstream MIT license, so no CDN connection or build step is required.

Moving objects use fixed-step gravity, drag, damping, and collision response.
The cradle uses constrained pendulums and nearly elastic collision impulses.
Fire, smoke, vortex dust, splash crowns, and water ripples use procedural
visual approximations rather than full fluid or thermodynamic solvers.
