Home▸Rendering & Computer Graphics▸Cyberpunk Rain Street: Terminal Velocity & Wet-Street Reflections (2D)

Cyberpunk Rain Street: Terminal Velocity & Wet-Street Reflections (2D)

A flat, top-down-free 2D take on the same wet neon street: real raindrop terminal-velocity physics, a puddle that actually fills and drains, and neon reflections whose intensity follows the Fresnel equations instead of a fixed opacity value.

Rendering & Computer Graphics2DModerate60 FPS📱 Mobile-adapted⇄ 3D version
2d-cyberpunk-rain-street ↗ Open standalone

This 2D companion swaps the orbiting 3D camera for a flat, always-legible view of the same idea: light meeting water on a city street. Raindrops fall at their real terminal velocity — computed from the Atlas et al. (1973) empirical fit for drop diameter versus equilibrium fall speed, not a fixed constant — while a linear-reservoir hydrology model fills and drains a thin puddle film on the asphalt as you change the rain intensity and street drainage slope. Every neon sign reflected in that film is drawn at an intensity set by the Schlick approximation of the Fresnel equations, so a shallow viewing angle produces a bright, near-mirror reflection while a steep one lets the dry-looking asphalt show through — the same optical behaviour that makes real wet streets at night look the way they do.

⚙ Under the hood

Raindrop fall speed from the Atlas terminal-velocity fit, puddle depth from a linear-reservoir dh/dt = rain − drainage·h ODE, and reflection intensity from Schlick's Fresnel approximation — three real formulas driving one visual scene.

raindrop terminal velocityfresnel reflectancepuddle hydrologyneon reflectionswet-surface rendering

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)