cd /news/generative-ai/fable5-world-demo-3d-world-built-by-… Β· home β€Ί topics β€Ί generative-ai β€Ί article
[ARTICLE Β· art-47970] src=github.com β†— pub= topic=generative-ai verified=true sentiment=↑ positive

Fable5-world-demo: 3D world built by Claude Fable 5 using Three.js

A developer built a fully procedural 4x4 km open world in the browser using Three.js and WebGPU, with the code generated almost entirely by Anthropic's Claude Fable 5 model. The project, called LAAS, contains no pre-made assets and is reproducible from a single seed parameter, demonstrating the model's ability to autonomously plan and execute complex 3D world generation.

read4 min views1 publishedJul 4, 2026
Fable5-world-demo: 3D world built by Claude Fable 5 using Three.js
Image: source

laas β€” Estonian for old-growth forest.

Unedited engine output. Every mesh, texture, and light in this frame is generated by code at boot β€” the repository contains no image, model, or audio assets.

LAAS is a fully procedural 4Γ—4 km open world running in the browser on WebGPU: three.js WebGPURenderer

with TSL materials and raw WGSL compute, TypeScript strict with zero any

, no WebGL fallback. The entire world is reproducible from a single URL parameter (?seed=N

).

The goal of this project is to test the capabilities of Claude Fable 5, Anthropic's newest model. This repository was built roughly 99% by the model, with minimal human steering:

  • The human partially wrote one document: PROJECT_LAAS_v2.mdβ€” the brief. It sets the visual bar (UE5-class reference frames), hard floors (triangle counts, system list, world size), and banned outcomes (black shadows, cloned trees, fog as cover). It deliberately does not say how to build any of it. - Everything else was planned and executed by Fable 5 across long autonomous sessions: the architecture, all engine and world systems, the verification tooling, the debugging, the working notes, and this README.
  • Human input is limited to rare feedback on the things a model cannot judge well from static output: whether motion effects feel right, whether interactive performance holds up, whether an artifact is visible while moving. Examples from the log: wind sway amplitude, walk-camera bob, cloud motion lagging the camera, water coverage taste.

The model does its own QA. It boots the world headless (Playwright driving Chromium with a WebGPU/Metal adapter), takes screenshots, samples pixels, diffs frames against baselines with frame-aligned determinism, profiles GPU passes per encoder, and writes regression probes for the bugs it finds. The diagnosis logs, measurements, and decisions live in STATUS.md, which serves as the model's durable memory between sessions.

Current state: about 21,000 lines of strict TypeScript across 90+ commits, all phases of the brief built, with an ongoing performance pass. Known open issues are tracked at the top of STATUS.md.

  • Terrain: 4096Β² heightfield synthesis, pipe-model hydraulic plus thermal erosion, flow-accumulation rivers carving real channels into lakes with outlets, moisture and biome classification, slope- and exposure-driven snow. CDLOD quadtree meshing with crack-free skirts and far-shell detail synthesis to a 4 km+ visible range.
  • Vegetation: six tree species grown by a procedural branching grammar with per-instance uniqueness (no two trees share a mesh), cluster-card foliage baked from real generated leaf geometry, octahedral impostors, three shrub classes, ferns, flowering plants, deadfall with decay states. Around 190,000 trees and 450,000 understory instances are placed by GPU clustered-Poisson scatter and culled per frame into compacted indirect draws; meadows render roughly a million grass blades.
  • Lighting: four-cascade shadow maps with PCSS and screen-space contact shadows, a terrain-relative irradiance-probe field for GI, GTAO, screen-space bounce, foliage translucency. A no-black-shadows rule is enforced by automated pixel sampling.
  • Atmosphere: Hillaire LUT atmosphere driving sky, aerial perspective and light color; raymarched volumetric clouds with cloud shadows; froxel volumetrics for canopy light shafts and valley fog.
  • Water: stream and lake surfaces on a camera-following clipmap, screen-space reflections with terrain-aware fallbacks, analytic caustics, obstacle foam, wet margins.
  • Motion: hierarchical wind through every plant, 131,072 GPU particles (snow, pollen, drifting leaves), drifting and churning cloud fields.
  • Post: temporal AA with analytic camera-reprojection velocity, bloom, GPU auto-exposure, per-time-of-day filmic grade.
  • Exploration: walk mode with gravity, jumping, sprint and stride-matched camera motion; free-fly mode; nine composed bookmarks; a 90-second flythrough.
npm install
npm run dev

Open http://localhost:5173

in Google Chrome 113 or newer on a desktop or laptop. Other Chromium-based browsers (Edge, Brave, Arc, Opera) should work too. Safari and Firefox are not supported β€” the engine is built and tested against Chrome's WebGPU implementation, and the page detects this before and says so. Mobile and tablet browsers get a notice recommending a computer. There is no WebGL fallback by design: if Chrome is present but WebGPU is unavailable, the page fails loudly with diagnostics and the exact things to check (hardware acceleration, chrome://gpu

, browser version).

Controls: click to capture the mouse. WASD to move, Shift to sprint, Space to jump, V toggles walk/fly, mouse wheel sets fly speed, E/Q move vertically in fly mode. Keys 1–9 jump to composed bookmarks, F starts the flythrough, F3 opens the debug HUD with per-pass GPU timings, P prints the current camera pose as a ?cam=

string.

Useful URL parameters: ?seed=N

(world seed), ?T=hours

(time of day, 0–24), ?shot=1..9

(boot into a bookmark), ?cam=x,y,z,yaw,pitch[,fov]

(exact pose), ?preset=low|high|ultra

, ?freeze=1

(freeze world motion), ?hud=1

(HUD open at boot).

Path What it is
PROJECT_LAAS_v2.md
The brief. The only human-authored document in the repository.
STATUS.md
The model's working memory: current state, diagnosis logs, measurements, decision history.
docs/THREE-NOTES.md
Verified three.js/TSL/WebGPU API notes the model accumulated against the pinned version.
docs/DELTA.md , docs/DEVIATIONS.md
Reference-comparison loops per phase, and spec deviations with reasons.
src/
Engine and world: core/ , gpu/ , world/ , vegetation/ , render/ , sky/ , debug/ .
tools/
The model's verification harness: headless WebGPU screenshots, image comparison, pixel sampling, GPU profiling, bug-specific probes.
reference/
The reference frames the world is judged against.
── more in #generative-ai 4 stories Β· sorted by recency
── more on @claude fable 5 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain β€” perfect for shipping the agent you just read about.

$git push zahid main
β†’ Live at https://your-agent.zahid.host βœ“
Get free account β†’ Pricing
from €0/mo Β· no card required
LIVE [news/fable5-world-demo-3d…] indexed:0 read:4min 2026-07-04 Β· β€”