Amiga Juggler
The classic ray-tracing demo, now recomputed by your GPU — every light ray, every frame. Choose how to start.
Initialising WebGL2
You can pause and close at any time from the control bar.
A tribute to Eric Graham. Built by mahieu.nl.
About this reconstruction
In November 1986 Eric Graham's Juggler showed what an Amiga could do: 24 ray-traced HAM frames of 320×200, 0.8 seconds per loop, one "ding" per catch. This page recomputes the same scene on your GPU every frame: 70 spheres, an infinite checkerboard floor, hard shadows and mirror reflections, without video or pre-rendered images.
Scene, camera, light, timing and sound were calibrated against the original frames and Graham's recovered source code. The motion data was lost and has been re-measured from all 24 frames. The 1986 mode shows the 24 discrete frames with 4 bits per colour channel; the modern mode interpolates smoothly at full resolution.
Sources: Graham's Raytracer 1.0 source, Ernie Wright's analysis, Meatfighter and Ben Hanke's WebGL version. The full technical notes are in the README (Markdown, in Dutch).