Flow case study
An interactive installation of water that flows around your hand
- My role
- Hand tracking, projection mapping, water simulation, interaction logic
- Built with
- TouchDesigner, Leap Motion, projectors, wood, fabric, POPs and CHOPs
- Shown
- InterPlay, UAL CCI ยท studio test, 30 students ยท built twice ยท group of three
An interactive reef that bleaches while you play with it
Flow is an interactive installation about human impact on a fragile underwater ecosystem, projected onto a form that hangs on the wall and reacts to how close you get.
Reach toward it and the water flows around your hand as if it had weight. Stay, and the colour drains out, red spreads across your hand, and the coral bleaches. Step back and it slowly recovers.
Nothing is triggered by a single action, so what you get depends on how close you come and how long you stay. It took two builds and three people: a flat screen version for the sprint, then a rebuild onto a physical form for InterPlay. My part was the hand tracking, the water, lining the projection up with our virtual cameras, and the red that grows across your hand.
I tracked the hand and rebuilt it inside the scene
The obvious approach is to project onto the real hand. I tracked it with a Leap Motion and rebuilt it inside the scene instead, so there is no surface to map onto and the illusion holds as long as the tracked hand, the virtual camera and the projector agree. It should feel like your body moved into the ecosystem, not like you picked up a controller.
Lag made fast motion look wrong, so the hand stops being drawn once it passes a speed threshold. Behind it, the water runs on POPs and the behaviour on a stack of CHOPs that decides when the coral shrinks, bleaches and recovers: a timer, not a switch, so the same movement ends differently depending on how long it lasts.
Version one was a rectangle of light on a studio screen
Once the tracking held we moved into the studio: a big screen, projectors on truss, and a box on a table as a physical reference.
We used that box with camSchnappr in TouchDesigner to line each projector up with our virtual cameras, until the projected water and the scene agreed on where the real interaction space was. Two projectors covered it from both sides so your own shadow did not land in the middle.
The water and the coral refused to share one world
Both live in 3D space, so they had to share lights, depth and post processing, and the mismatch only showed once everything was assembled. Rendering the coral on its own and dropping it into the water would have fixed the look and destroyed the depth between them, which is the thing the piece depends on, so we fixed the settings instead of the picture.
The cause was organisational. Three of us built different parts in separate copies of the same file, so the coral never used the settings the hand tracking did. Agreeing render settings up front is the most transferable thing I took out of this.
Thirty people watched it, and three things went wrong
We showed version one to our course and mostly just watched them. The water only moved with a pinch, so people waved, pointed and held a flat palm out, and the water ignored all of it. The timing failed too: ten seconds to shrink and fifteen to recover, in a room where people give you thirty seconds, reads as nothing happening at all.
The third one I did not expect. It looked good, and looking good was in the way, because the water, the hand, the red and the bleaching all competed for the same attention. And a rectangle of light keeps people at screen distance, which is the opposite of what a piece about proximity needs.
We rebuilt it instead of polishing it
InterPlay gave us one more build, so we rebuilt rather than polished. The reef came off the screen and onto a hanging form at head height, and the fabric adds a dimension a screen cannot: light enters the material and scatters inside it, so the reef has depth you walk up to instead of a flat rectangle you watch.
The visuals got clearer at the same time. Deep blue replaced green coral on cyan so the red finally has somewhere to go, the pinch went so presence alone is enough, and the elements got an order: water first, then the red on the hand, then the coral. The fix was never better feedback, it was deciding what gets to be loud.
Next time the red starts in the water, not on the hand
The strongest moment is the hand entering slowly and the red starting to grow on it, and that points at a better order than the one we built. Let people play with the water first, then let a small red structure rise out of the water and climb onto the hand once they stay too long. It gives the colour an origin, and it changes what your hand means: not the source of the damage, but the thing that reveals it.
The file needs the same care. The CHOP logic got harder to read as the project grew, and that hurt most when three of us were merging it. Next time I build clean components and name things before it gets big, not after.
Made as a group
A three-person sprint at the UAL Creative Computing Institute, rebuilt together for InterPlay. The concept was shared, and the work split across tracking and projection, the coral system, and the environment around them.
Laurens Art Ramsenthaler โ water simulation, hand visuals, Leap Motion, projection mapping, red hand impact. Priyal Patel โ coral visuals, interaction logic, dual projector setup. Cat Menzies โ visual development and installation.
