Go to file
type-two eed2eb2646 Lane B (Paint): splat pipeline, coverage compute, buff/threshold framework
The core invention: paint lands on the blob body where projectiles hit, live
per-colour coverage % is computed from a quantized UV mask, and coverage drives
buffs per GDD §6 MVP subset (RED speed+embers, GREEN grip, BLUE waterproof,
total→mass, 20% activate / 70% super+glow).

- src/paint/skin.ts       PaintSkin: Canvas-2D mask on mesh UVs → CanvasTexture;
                          splatAtPoint raycasts impact→face UV; dual soft-canvas
                          + hard quantized-index mask so coverage is exact
                          integer bucketing (never getImageData); 250ms cache;
                          scrub-hole cleanse; U-seam wrap.
- src/paint/coverage-math.ts  pure, unit-tested: countBuckets, coverage report,
                          buffStrength, computeModifiers.
- src/paint/cannon.ts     PaintCannon: gravity-arc glob projectiles (manual
                          swept sphere test), target-leading ballistic solve,
                          fires on interval AND machine:signal; emits paint:splatted.
- src/paint/buffs.ts      BuffSystem: coverage→modifiers each step + ember trail
                          (additive Points) + super-state emissive pulse.
- src/paint/hud.ts        PaintHUD: per-colour bars + active buff kit (throttled).
- src/paint/index.ts      exports + installPaint() wiring the inbound Lane C
                          protocol (request-splat proximity-gated / request-cleanse).
- src/demo/lane-b.ts      stub ball orbiting a RED and GREEN cannon; HUD live;
                          debug keys for fire/signal/flood/cleanse/pause.
- src/paint/coverage-math.test.ts  32 assertions (node --experimental-strip-types).

build: tsc strict + vite pass. No edits outside owned paths; contracts frozen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 20:13:30 +10:00
.claude Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
assets/concepts Concept wave 1 complete: 8/8 images off the farm 2026-07-17 18:21:04 +10:00
demos Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
dist Lane B (Paint): splat pipeline, coverage compute, buff/threshold framework 2026-07-17 20:13:30 +10:00
docs GDD v0.1: full design doc, idea capture, MODELBEAST farm client + concept wave 1 2026-07-17 18:15:56 +10:00
lanes Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
node_modules Lane B (Paint): splat pipeline, coverage compute, buff/threshold framework 2026-07-17 20:13:30 +10:00
src Lane B (Paint): splat pipeline, coverage compute, buff/threshold framework 2026-07-17 20:13:30 +10:00
tools Ignore pycache 2026-07-17 18:16:24 +10:00
.gitignore Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
GDD.md GDD v0.1: full design doc, idea capture, MODELBEAST farm client + concept wave 1 2026-07-17 18:15:56 +10:00
index.html Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
package-lock.json Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
package.json Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
README.md GDD v0.1: full design doc, idea capture, MODELBEAST farm client + concept wave 1 2026-07-17 18:15:56 +10:00
tsconfig.json Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
vite.config.ts Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00

BLOBBO

Fall Guys × Splatoon × Micro Machines: wobbly blob racers on giant Rube-Goldberg courses where the paint that lands on you is your loadout — relative % coverage per colour = your buffs, weight, and size.

  • GDD.md — the design document (v0.1, in review). Start here.
  • docs/IDEA.md — the original raw idea capture (2026-07-17).
  • tools/mb.py — MODELBEAST farm client (concept art / mesh gen on the local render farm). tools/concept-wave-1.json = first asset wave.
  • assets/concepts/ — generated concept art (review gate for the mesh wave).

Status: pre-production. GDD under review; next step is per-lane execution instructions (see GDD §11) once features are signed off.