Project 06 / 3D / 2024
Signal Garden
Self-initiated installationA garden that grows from sound. Microphone or MIDI input feeds a field of instanced blooms, each one opening in response to pitch, amplitude, and rhythm.
01 / Brief
Listen first. The geometry will follow.
Signal Garden began as a way to make sound visible without turning it into a waveform. The brief was simple: build a small world that listens. No samples, no preset animation. Every flower is a response to live input.
It needed to work in two very different contexts: a quiet browser tab with a microphone, and a projector in a room with a MIDI controller. The system had to be resilient to both.
02 / Approach
Map sound to growth, not volume bars.
I mapped pitch to hue, amplitude to scale, and transient density to the number of open blooms. A feedback delay in the audio graph lets the garden keep moving after a sound stops.
The result is part instrument, part screensaver, part meditation. There is no score and no right way to play it. The only instruction is to make a sound.
“Listen first. The geometry will follow.”
03 / Build
A living shader with a limiter.
The field uses instanced geometry for the blooms and a custom shader for petal curvature. Web Audio handles microphone input, MIDI note detection, and a master limiter.
A fallback mode generates a slow synthetic signal when microphone access is denied, so the garden never appears broken. The whole scene is capped at 1.5× DPR on mobile and pauses when the tab is hidden.
- 01Microphone and MIDI input modes.
- 02Pitch, amplitude, and transient mapping.
- 03Instanced blooms with custom petal shaders.
- 04Synthetic fallback when mic access is denied.
SIGNAL
01
PITCH
HUE
MIDI
IN
04 / Outcome
What it leaves behind.
The garden is never finished. Every input changes it. The installation version would add a projector mode, a longer audio loop, and a small set of gestures that let a room of people play it together.