Pixel Vessel: CS476A HW#2: Sound Peeking

Amy Lo
3 min readOct 25, 2023

Pixel Vessel

“Pixel Vessel” is about passage of time and the fluidity of water. The teapot, which serves as the focal point, appears to be enveloped by an ever-changing, fluid-like ‘water’ created using the time-domain waterform. The magnitude spectrum waterfall is represented through the billowing steam that arises from the teapot. The teapot has been ensnared in a visual whirlpool of pixels, an unsettling portrayal that challenges conventional calm, zen representations of teatime. ‘Pixel Vessel’ brews together the orderly and the chaotic, the traditional and the digital, inviting you to meditate to the sublime.

Final Video

Visualizer Instructions

Run both sound-narrative.ck and milestone-3.ck at the same time.


Built for MacOS


This idea was born from my initial idea in Milestone 1 of a “A teapot, whose steam represents the changing audio and the intensity is the amount of steam in the scene”. At first, I wanted to make my audio visualizer feel ‘zen’, like the feeling of brewing tea. Originally, I thought that it would be peaceful and less chaotic, but as I reflected on my own quiet contemplation, I realized that I often have an unsettling mind full of rapidly chasing and intrusive thoughts. Thus, through the constant rotation of the teapot and the camera work around it, I aimed to create a hypnotic, unnerving experience that would represent the tension between chaos and order. This is achieved through the smooth texture of the teapot that conflicts with the sketchy, messy water that revolves around it.

What went well during this process was building the teapot itself. I was surprised by the level of fidelity that I could add into Chuck, creating a representation of a simple vessel that I used point lights to gently illuminate and add depth to. I also enjoyed making the steam that billowed above — with the help of classmates’ feedback, I changed the steam from lines to points to create a more soft, airy aesthetic.

However, I experienced difficulties figuring out what to do with the waveform — originally, it appeared as a blob-like line under my teapot in my previous milestone. A breakthrough was figuring out how to make a circle out of the points of the waveform (and then making it rotate) to create this infinity loop effect. I did receive help from ChatGPT to create an initial set of notes for my sound narrative. I didn’t like the rhythm or the music it suggested, so I heavily modified and added my own discordant harmonies after hours of trial and error to create my final effect.

All of the assets were made in ChucK & ChuGL(sometimes painfully so). Shoutout to Raghav and Kunwoo for their help in debugging and supporting my final project.




Amy Lo

Designer, builder, thinker. Stanford CS & Psychology.