Interactive explanation

Construct the refracted hourglass

Start with a two-interface Snell path, extend it through a chain of spheres, then move a follower off-axis to see where rotational symmetry breaks.

Teaching model · not native output
Gold: incoming · violet: glass · mint: outgoing
—entry incidence angle
—selected ray: interfaces reached / requested
—selected ray: Fresnel transmission so far
Symmetry makes the difference.

X(φ,t) = xexit(φ) + t ωexit(φ)

What the chain represents.

A source displaced from a single sphere still has a revolution axis. The expensive case is another sphere displaced from that axis. An area lamp can cause the same mismatch because its sampled source point moves.

Each azimuth traces actual sphere intersections and Snell refractions. The native general-chain path uses numerical root isolation; this visualizer only draws its geometry. The spheres are nonabsorbing and no internal reflection branches are drawn. The three-sphere off-axis setting is a geometric exploration, beyond the native two-sphere off-axis solver’s current scope. This page computes only when a control or viewport size changes.