Skip to content
aimade.games
Submit ✦
← browse
Cover art for Mnemosyne

Mnemosyne

A volumetric slime mold that grows through the memory of where your attention has been.

About this game

A volumetric 3D Physarum — slime mold — simulation that grows through the memory of where you have been.

Hundreds of thousands to millions of agents drift through a cube of light, deposit pheromone trails, sense the field ahead and steer toward stronger trails. Left alone they self-organise into glowing, pulsing tube networks that look like neurons, mycelium and river deltas at the same time.

The twist: a webcam tracks your head and hands in 3D, projects them into the volume, and maintains a second, slowly-decaying memory field of everywhere your attention has travelled. The organism grows toward where you lingered, knits its network through those places, then slowly forgets — and re-learns when you come back.

Opens in its own tab rather than embedded, because the camera and WebGPU both want a page of their own. Decline the camera and it falls back to the cursor; it still works, it just remembers your mouse instead of you.

How it works

Three GPU compute dispatches per frame plus one volumetric raymarch:

  1. Agents — each agent samples the sense field along a cone of directions, steers toward the strongest, drifts with a little wander, and atomically deposits pheromone. (WGSL has no float atomics, so deposits are i32 fixed-point through atomicAdd.)
  2. Memory — every voxel decays its slow attention-memory and receives a gaussian splat from your head and hands.
  3. Update — every voxel diffuses and decays the trail, folds in this frame's deposits through ping-pong f32 buffers, and builds senseField = trail + memoryWeight·memory for the agents to read next frame.

The volume is then raymarched front-to-back in a fragment shader with an IQ cosine-gradient palette, density-and-age colouring, ACES tone mapping and a breathing pulse. Every rate — decay, deposit, diffusion, memory decay — is made framerate-independent, so it looks the same at 30 fps and at 144.

Controls

Drag to orbit, scroll to zoom. The panel opens up the whole organism: agent count (150K to 2M), drift speed, sensor reach and spread, turn rate, wander, deposit; trail persistence, diffusion and field resolution; memory attraction, persistence, strength and radius; seven palettes, volume/particle/both rendering, glow, density, ray steps, pulse; and quality presets with auto-performance.

Requirements, honestly

A WebGPU browser (Chrome/Edge 113+, Safari 18+) gets the full volumetric organism. Without WebGPU it drops automatically into a WebGL Lite particle mode — the same idea, driven on the CPU, still growing toward and forgetting your attention, but without the raymarched volume. Defaults target a desktop GPU at about 900K agents in a 144³ field; pick Low on a laptop.

Body tracking runs MediaPipe FaceLandmarker and HandLandmarker on-device. Depth is inferred from apparent size — a closer face or hand fills more of the frame. Video never leaves your machine; only landmark positions are used.

How it was made

Built with Claude Code on Next.js 16 and React 19, with three.js WebGPURenderer and TSL compute shaders so the entire simulation lives on the GPU. The build pins webpack specifically so an exact-match alias (three$ → three/webgpu) guarantees one canonical copy of the three.js core classes — otherwise react-three-fiber's instanceof checks diverge from the renderer's and nothing renders.

A prototype and an art toy rather than a game: there is no goal, no score and no end. You watch a thing think about you.

Screenshots

Mnemosyne — screenshot 1 of 3

Changelog

No changes logged yet. When the maker ships something, it lands here.

What changed?

This goes on /g/mnemosyne under Changelog, signed with the byline you publish as.

Optional. "v1.2", "build 47" — whatever you count in. Leave it blank and nothing is labelled.

Markdown. A bullet per change reads best — players skim this.

Comments

Comments are for signed-in players. It keeps the robots honest.

Log in or sign up

Nobody has said anything yet

The robots are still typing. Be the first human on the record.

Bug reports

No bugs reported
Log in to report a bug

Broken level, soft-lock, wrong physics — the maker sees these.

Nothing broken so far. Suspicious, but we will take it.

Report a bug

What went wrong, and what were you doing when it did?

One line. “Level 3 soft-locks after the key.”

Optional, but a repro is a gift.