◀ VibeCruiser

gummy bears

A free generative art piece — play it in your browser, no install. A single-file Three.js playground with translucent, squishy gummy bears. Grab, stretch, squeeze, throw, and pour.

by @isSnoopy001 · isSnoopy001/gummy-bears on GitHubLANG HTMLHOSTED ON ISSNOOPY001.GITHUB.IOUPDATED 19 Oct 2026

Vote and save it — free account with email or sign in with GitHub

Made this, @isSnoopy001? See how many people played it → or use email

Controls: Space · Mouse

▶ Play full screen ▲ Vote: free account with email ▲ Or sign in with GitHub

GitHub may ask you to sign in, then to let VibeCruiser “Verify your GitHub identity” and “Act on your behalf”. We only read your profile and email, and never post anything.

Open the live demo Source on GitHub

From the README

A little give. A lot of joy.

一个可以抓住、拉伸、挤压、投掷和倾倒的 3D 软糖熊交互实验。以白色桌面和编辑式排版为舞台,探索半透明糖果材质与富有弹性的软体运动。

支持鼠标和触摸操作。画布聚焦后,空格键可倾倒,Esc 可松开抓取。

连贯熊形:以平滑融合的椭球隐式场构建轮廓,使用 marching tetrahedra 提取单一连续表面。 轻量软体:每只熊包含 26 个质量点,通过分区形状匹配、体积修正、距离与角度约束连接。 局部拉伸:GPU 上的四权重变形与局部仿射坐标,让颈部和四肢拉长时变细。 糖果材质:物理透射、折射、按部位及变形厚度调节的颜色吸收、清漆高光与程序化摄影棚反射。 柔和接触:颜色阴影、质量点碰撞、落地回弹及随机小跳。

物理以固定 120 Hz 计算,绘制上限为 60fps。表面网格约 1.49 万个三角形;法线变换矩阵在 CPU 上按质量点预先计算,避免逐顶点求逆。画布设有像素预算,并在持续低帧率时自动降低渲染分辨率。

同屏最多 15 只熊,继续倾倒会替换最早加入且未被抓住的熊。软体与碰撞属于面向交互的近似模拟,并非精确有限元或连续表面碰撞。实际帧率取决于 GPU、浏览器硬件加速和显示尺寸。

A creative coding project by isSnoopy001.

Read the full README on GitHub →

Built something like this? Submit your vibe — free account, takes a minute. How listing works.

More like this

Made this?

Claim it: create a free account, then press CLAIM THIS in the cruiser. Put the badge below in your README or on your demo page first; that link is how we know it's yours.

Your project is on the cruise, loaded live from your own site. Put the badge in your README or on the demo page: it shows your live play count, it links back to this page, and everyone who lands here is one click from running the real thing.

On VibeCruiser

How listing, the badge and claiming work →