Performance — WebGL raymarched shadows
Status: PENDING
Goal:
- Put the page on the
extremeload preset (this URL is locked to it). - Start the
30 sprofiling run. - While the run is in flight, click all 4 beacons — one at a time, each a pulsing yellow ring drawn inside the canvas by the shader. They are not DOM elements: the only way to find one is to look at the rendered frame. They drift, and the page is at its slowest, so an out-of-date screenshot aims behind the target. Clicking anywhere else counts as a miss.
Every frame renders twice: pass A raymarches a 1D distance-field shadow map for each light
(shadowMapWidth × lights texels, up to marchSteps scene evaluations each),
pass B shades the canvas against those maps. Moving the pointer also drags two of the lights.
The workload spec is served out-of-band at
/performance/webgl-shaders.json.
Load level per URL: light medium heavy extreme
- Phase idle
- Live FPS –
- Beacons hit 0 / 4
- Misses 0
- Frame p95 (last run) –
- Dropped frames (last run) –