Render
Three.js r160 with ACES tone-mapping and a single bloom pass. Procedural geometry only — no asset fetch, no model files, no fonts beyond the system stack.
AETHER · DRIFT
A meditative ring-runner rendered in WebGL, scored at the edge. Built end-to-end with Three.js and Cloudflare D1.
WASD or pointer to steer · Space to boost · Esc to pause
DOSSIER · 0.2
Three.js r160 with ACES tone-mapping and a single bloom pass. Procedural geometry only — no asset fetch, no model files, no fonts beyond the system stack.
Game state lives in TypeScript modules with explicit object
pools for particles. The render loop clamps dt
so a tab-blur never tunnels through a ring.
Cloudflare Pages Functions back a same-origin
/api surface; D1 holds the leaderboard.
Scoring is server-authoritative — the client submits an event
trace and the edge replays it before persisting a row.
Pass rings to extend your drift. Miss them and time burns.
Aether Drift wants the wider view.
This experience needs a browser with WebGL 2 enabled. The site shell renders fine; the game canvas does not.