EMERGENCE — five emergent systems, each computed live and each one becomes the next

Hi all — I just shipped a solo side-project I’d love feedback on: EMERGENCE.

Live: https://emergence.method64.com

It’s a single-page, scroll-driven piece built around one idea: complex behavior emerging from simple local rules. Five canonical systems, each computed live in the browser (nothing pre-rendered, no recordings), and the part I care most about is, each scene becomes the next through a real state handoff, not a crossfade.

The five scenes:

  • VOID — Rule 110, a 1D cellular automaton (Turing-complete, Cook 2004),
    run on the CPU, stamped row-by-row into a scrolling space-time texture.
  • LIFE — Conway’s Game of Life (B3/S23) on the GPU, float ping-pong FBO,
    seeded from Rule 110’s history (logic → life).
  • FLOCK — Boids, ~16k agents on the GPU via a spatial grid. Topological
    neighbor coupling (~7 nearest, Ballerini et al. 2008) rather than a fixed
    radius — that’s what makes it form moving shapes instead of a blob. The
    cells from LIFE detach and become these birds.
  • PATTERN — Gray-Scott reaction-diffusion, fragment shader on a double FBO,
    many substeps per frame. The boids’ motion stamps the initial V field.
  • MIND — a Kohonen self-organizing map (CPU), where the reaction-diffusion
    pattern is the input distribution the net learns to drape onto.

Each scene reacts to the pointer in real time (paint cells, carve a vortex in the flock, inject activator, etc.), and the transitions pass actual state from one simulation into the next.

Stack: three.js + raw GLSL, Vite. No animation library — all motion comes from the simulations themselves.

I’d genuinely love critique — on performance (it’s tuned to hold up on a weak laptop and on iPhone, curious how it runs for you), on the handoffs, and on anything that feels off. Built by one person, so all feedback welcome.

4 Likes