HELIOS, a heliophysics outreach program, needed the sun itself on the page. What they got is not an image, video, or texture: it is a single hand-written GLSL fragment shader running in raw WebGL, no libraries. Designed and built by our AI pipeline in one day.
One full-screen triangle, one fragment shader. The photosphere is six-octave fBm value noise sampled through a fake-sphere projection (pm = sp / (z + 0.35)) so granulation wraps around the limb. Three colour stops (dark ember → mid orange → hot cream) mix on the noise; a second low-frequency fBm carves sunspots; 0.35 + 0.65 * z gives physical limb darkening. Outside the disc, exponential falloffs build the corona, with an angular fBm modulating streamers.
float g = fbm(pm * 3.0 + vec2(t, -t * 0.7)); // granulation float spots = smoothstep(.34, .18, fbm(pm * 1.6 + seed)); // sunspots col += vec3(1.0, .55, .16) * exp(-(r - R) * 6.5) * fade; // corona
Scroll drives uniforms: the star retreats up-right, shrinks by half, and dims 45% so the data decks stay legible, a fix that came out of the screenshot review, where the fleet list was drowning in corona.
Michroma (display) against Space Mono (data) on near-void blue-black, one signal orange, thin cyan for annotations. Corner brackets, scanlines at 40% opacity, and blinking status dots sell the instrument-panel fiction without a single stock element.
Three headless-render passes. Findings that shipped fixes: star-noise density halved, probe list given a translucent panel, nav given a gradient scrim, sun recession curve steepened, sparklines pre-seeded so they're alive on first paint.