Caustica

analytic wave optics · one pass · no textures

movecarry the lens
presssink a stone
wheelchange the depth
Every ripple is a closed‑form wave packet. The shader differentiates the surface twice and solves det(I + d·H) = 0 — where light folds, it burns.
shoal
abyss
1.15

Caustica

This piece is computed entirely on the GPU — a refracting water surface differentiated in closed form. Your browser reports no WebGL context, so there is nothing here to see. Enable hardware acceleration, or open it in a WebGL‑capable browser.