# Jelly Billiards

- Author: @bluumik
- Card: Creator prompt
- Theme: Jelly & soft-body
- Stack: Not rebuilt
- Interaction: Pointer
- Licence: Credited link (Shared publicly by the author; full text with credit, removed on request)
- Verified: not yet
- Original post: https://x.com/bluumik/status/2113960283982975068

## Original prompt

```text
PROMT- Build a single-file interactive 3D web experience called "Jelly Billiards." using Three.js (WebGL), all procedural, zero external assets. Soft, translucent jelly balls roll, collide and wobble on a round glass table in a dark, moody room.

LOOK AND FEEL
- Near-black warm background with a soft colored vignette glow that matches the current jelly color.
- Serif title "Jelly Billiards." top left with a small italic subtitle "The Soft Play Collection".
- A round, shallow, frosted glass table seen from a three-quarter top view, with a soft rim highlight and a faint glow underneath.
- Small refined UI. Quiet luxury feeling, like a limited edition design object.

THE BALLS
- Smooth spheres of translucent jelly with glossy highlights, soft inner glow and a subtle subsurface look.
- Each ball has a small white number disc or a soft circular marking, with numbers readable but delicate.
- Pastel flavors: pink, lavender, mint, sky blue, butter yellow, peach. Balls in a set share the chosen flavor with slight tone variation.

JELLY PHYSICS
- Rigid body rolling and collisions with a soft-body wobble layer: balls squash on impact, jiggle and recover with damping.
- Elastic collisions between balls and with the table rim, believable rolling friction, balls settle smoothly.
- Click and drag on a ball to aim and release to shoot, with a faint aim line and power indicator. A ball can also be nudged by touch.
- Soft deformation visible at the contact point during collisions.

CONTROLS
- A pill button "Roll the balls" that scatters all balls with a random but pleasant impulse.
- Ball count stepper (1 to 9) with minus and plus buttons.
- Jelly color swatches along the bottom left. Switching one smoothly recolors the balls and the ambient glow.
- Top right buttons: "Table view" (top-down camera) and "Settings".
- Settings panel: jelly softness slider, auto-rotate toggle, sound toggle.
- Keyboard: Space to roll, plus and minus to change ball count, T for table view.

SOUND AND POLISH
- Soft squishy clacks and low thuds synthesized with WebAudio (no files), pitch and volume tied to impact speed.
- 60 fps, adaptive pixel ratio, filmic tone mapping, subtle bloom on highlights, soft contact shadows on the glass.
- Smooth camera orbit with inertia and a gentle auto-rotate option.
- Works on desktop and mobile touch. Clean, commented code in one HTML file with constants grouped at the top.
```

Not rebuilt by 3dmotion yet. Credit stays with @bluumik.

Prompt by @bluumik (https://x.com/bluumik/status/2113960283982975068) via 3dmotion.io/e/jelly-billiards
