⬤ crest   ⬤ trough   click = drop stone

About this 2D version

A flat, top-down companion to the 3D GLSL water-ripple shader: the same wave equation — circular wavefronts, geometric and time decay, and linear superposition of up to 12 simultaneous sources — drives a coarse heightfield grid rendered directly with Canvas 2D instead of a lit 3D mesh.