Sound Bath

Finding generative inspiration in an evening of sound, sea and code.

On a warm Saturday evening I found myself lying on the beach, listening to the sound of Tibetan singing bowls as the sun disappeared over the horizon. It’s not something I’d ever done before, and if you’d asked me a year ago if I’d spend an evening at a beach sound bath, I’d probably have said no. I’m glad I did.

There was something fascinating about hearing the bowls live. The tones didn’t feel like they travelled in perfect circles; they seemed to bend, overlap and interfere with one another as they drifted across the beach. Looking around, everyone was scattered naturally across the sand, each person having their own quiet experience while all sharing the same source of sound.

That stayed with me long after the evening had finished.


Turning a memory into code

Rather than recreating the event literally, I wanted to capture the feeling of it.

The piece starts from a simple aerial view. People become nothing more than small circles. The Tibetan bowls are reduced to three outlined rings. Everything else is generated procedurally.

Clicking and holding one of the bowls allows it to “charge”. Releasing the mouse sends a wave travelling outwards. As those waves reach people sitting around the bowls, they begin to emit their own smaller ripples, creating a constantly changing network of responses.

The result isn’t intended to be physically accurate. It’s more like a visual interpretation of shared resonance.


Inspired by the beach

The first colour palette came directly from photographs I took that evening.

Soft golden sand, fading evening blues and warm sunset yellows became the foundation of the artwork. Those colours appear only in the waves, while the people and bowls remain simple white forms. Keeping the geometry minimal lets the movement become the focus.

As the project developed, two additional modes emerged:

  • Beach – warm sand tones with colourful waves inspired by the evening sky.
  • Paper & Ink – reducing everything to black lines on textured paper, giving the piece the feel of a hand-drawn print.
  • Night – a dark background with softly glowing coloured waves, creating a more meditative atmosphere.

Each mode changes the mood of the same underlying simulation without changing the behaviour.


Building the interaction

The sketch is written in Processing (Java) and is entirely interactive.

Rather than looping through a fixed animation, the user creates the experience by interacting with the bowls. Holding a bowl increases its energy before releasing expanding waves that trigger reactions from nearby participants.

Those reactions then become part of the composition, with multiple wave systems overlapping and slowly fading away. Every interaction produces a slightly different arrangement.


What I enjoyed most

This project reminded me that inspiration doesn’t always come from galleries, books or websites.

Sometimes it’s simply being somewhere unfamiliar, experiencing something for the first time, and noticing the patterns your brain keeps replaying afterwards.

I never expected a Saturday evening listening to Tibetan singing bowls on a beach to become the basis for a generative artwork, but that’s exactly why I enjoy working with code. It gives me a way to translate memories and experiences into something visual, interactive and constantly evolving.


Tools used: Processing (Java), procedural animation, Perlin noise, generative drawing, interactive simulation.