Five rounds to bring mean luminance from 0.43 down to 0.10
The same black hole prompt to Fable 5.1 inside Claude Code: 42 turns, 41 tool calls, $4.24. Every round it rendered the frame itself, read the pixel statistics and decided what was blown out. Five rounds later the centre is black again, with spiral bands and a Doppler-brightened side — the one-shot attempt rendered nothing at all.
The on-screen labels are in Chinese: this is the model's verbatim output from an experiment run in Chinese, and editing it would make the artifact something other than what was measured.
How it was made
- Model
- Claude Fable 5.1 + Claude Code
- us.anthropic.claude-fable-5-1
- How
- agent loop
- Claude Code 2.1.266
- Reasoning effort
- high
- Turns
- 42
- Tool calls
- 41
- Output tokens
- 50.5k
- Wall time
- 15m 2s
- Cost
- $4.24
- Artifact
- 696 lines, one file
- Error feedback
- none
Same model. Its one-shot attempt rendered nothing — a TDZ error — and after one round of repair came back nearly all white. Inside Claude Code, the same prompt produced this, and the five rounds of visual iteration are itemised:
| Round | Mean luminance | What it fixed |
|---|---|---|
| 1 | 0.43 | additive dust over bloom blew out the whole frame |
| 2 | 0.23 | disk still a white blob, no structure |
| 3 | 0.15 | photon ring saturating to white |
| 4 | 0.11 | bloom haze inside the event horizon |
| 5 | 0.10 | final: black centre, visible spiral stripes, Doppler-brightened side, jets, nebula |
That table is the most interesting data in the whole comparison: overexposure is a defect a person spots instantly, and so can a model — as long as it can get the pixel statistics for its own screenshot. Both runs without a render loop failed on it. Both runs with one fixed it themselves.
The scene holds 300,000 particles in three GPU-driven populations (Keplerian dust with
sine turbulence, a twinkling star shell, two helical polar jets), a RingGeometry
accretion disk shaded in polar coordinates with differential rotation, seamless fbm
streaks and Doppler beaming, a black sphere with a Fresnel rim plus a back-face halo
sphere forming the photon ring, and a procedural fbm nebula skybox. Ten renders across
five rounds, matching hashes at ?t=7.5; in locked mode auto-rotate, mouse parallax and
the FPS readout are all disabled so no DOM text can drift between frames.
Controls: drag to orbit, scroll to zoom, space to pause, 1/2/3 for palettes (Ember,
Verdant-Gold), ?t=7.5 to freeze the clock.
Same prompt, other runs
three.js r170 is served from this site, so running a demo makes no third-party request. Published by the author as an individual; testing was self-funded and nothing here represents an employer's position.