Gummy Bears POC
Gummy Bears POC
Procedural gummy bears with real soft-body physics: one smooth-union SDF defines the bear once, and that definition produces the visible surface, the simulated particles, the limb clusters and the skin weights. Custom solver, no physics middleware.
Controls
- Drag a bear to grab a paw and stretch it, release to let it snap back
- Flick to throw a bear across the table
- Space pours another bear, up to a bag of 16
- R resets the bag
- The panel sets flavour, wobble and candy memory, and reads out stretch, bounces and count
What You Are Looking At
- 95 particles and 5 clusters per bear, solved by cluster shape matching at 480 substeps per second
- 3 102 surface vertices skinned on the CPU each frame, faired with Taubin lambda/mu pairs in delta space
- Translucent candy shading with Beer-Lambert absorption, plus coloured contact shadows that are depth-tested
- Plasticity as a constitutive model: a stretched bear keeps part of the deformation and slowly recovers
WebGL 2 and a GPU help, but the simulation itself is plain TypeScript on the CPU: 1.06 ms per frame for one bear, 4.60 ms for a bag of four. The demo is served from this site, so it works offline once the page has loaded. If the frame stays blank,open it in its own tab.
How This Build Got Here
The demo is a build artefact of the argon proof of concept, rebuilt with a site-relative base and copied into site/public/projects/gummy-bear/app/ by./scripts/automation/sync-gummy-bear.sh. The full engineering write-up, including the headless vision-critique loop that tuned it, is onHow the argon POC Was Built. Source: private repository on the owner’s Forgejo (not published).