CAUSTICA is a 3D light puzzle in which the physics is not decoration — it is the rule set. A dead corridor, a single white beam, and a room full of heavy glass you can turn. Rotate a mirror and the beam reflects at an equal angle. Rotate a wedge of heavy flint glass and the white beam comes apart into three separate beams of red, green and blue, because red and blue genuinely refract by different amounts. Tilt a light guide far enough and the beam stops being able to escape at all — past the 41.3° critical angle, glass becomes a perfect mirror from the inside. Send every beam into the receptor that matches its colour, with enough intensity left, and the corridor opens.
The thing that makes this work is that the picture and the win condition come from the same numbers. A CPU ray solver traces the beam with the vector form of Snell's law, applies Schlick's Fresnel approximation to decide how much light splits off at each surface, and subtracts absorption along the path inside glass. That solver decides whether you win. Separately, Three.js draws the glass with physically-based transmission and dispersion. Neither one is faking the other — they read the same geometry and the same index-of-refraction table.
There is no fail state, no timer and no step penalty. Twenty-four rooms across four chapters — Incidence, Dispersion, Captive, Calibration — each introducing exactly one idea, each machine-verified solvable before it ever shipped. On top of that, a daily calibration challenge generated from the date, so every player in the world gets the same board, scored on how few moves and how little time it took.
How to play
- Drag a piece of glass to rotate it (snaps to 5°); hold for a moment first to drop into 0.5° fine adjustment.
- Drag empty space to orbit the camera, scroll to zoom. The camera never changes the answer — it just helps you read the light.
- The sphere lens can't be rotated, only slid across the beam — where the light strikes the curve decides how far it bends.
- Each receptor needs the right colour at an intensity of at least 0.35. Beam splitters halve intensity, so a two-splitter route may not have enough light left.
- Two optional calibration stars per room: one for the step target, one for the time target. Neither is required to advance.
Things that are actually true in here
- Thick glass with parallel faces never changes a beam's direction — it only shifts the whole path sideways. That's why the slab rooms are about millimetre alignment, not aiming.
- Total internal reflection is why fibre optics work, and the light guide in chapter three behaves the same way: get the angle above 41.3° and the light simply cannot leave.
- A beam that has already been split keeps its colour through everything downstream — a colour filter will destroy it if it arrives at the wrong one.
- One deliberate exaggeration: the dispersive wedge uses a red-to-blue index spread of 0.12, four times real heavy flint. At real values the three beams separate by less than the width of one receptor, and chapter two would be unplayable.
