δΈ€ (yi) / oneness

TouchDesigner, p5.js, ml5.js, Google MediaPipe, OSC, WebSockets, Node.js
β†— GitHub

For Ceci Sun's senior thesis, δΈ€ (yi) / oneness, I created visuals to accompany her live performance and a GUI/debugging interface that sends OSC messages to TouchDesigner.

Background

Thematic Underpinnings

Much of Ceci's creative practice is informed by mind-body connections through qigong principles. Her work combines Eastern and Western philosophical perspectives: Eastern traditions emphasize balance and the flow of energy, while Western contemporary dance practices explore emotional expression and psychological experience. As an American-born Chinese American, I have also grown up with a mix of Eastern and Western philosophies. Topics such as meditation and traditional Chinese medicine are deeply ingrained in my personal life, which I was able to draw on when working on this project.

Inspiration

Inspiration

I was heavily inspired by discrete figures by Daito Manabe's Rhizomatiks Research group, as well as Lingdong Huang's {Shan, Shui}*, which Golan had previously shown us and undeniably influenced how we approached the mountain visuals. For time-based visuals, I often find it easier to figure out the music first, and Ceci sent me some placeholder tracks that helped guide what the visuals should look like.

Inspiration

Web Render vs. OSC

Limitations and Challenges

Since I only needed a few parameters to communicate the movement, it was not necessary to use all 33 joints. Unfortunately, the MediaPipe library does not support turning off certain joints. If I were to scale up the project, I would need to create a custom model that only uses the necessary joints to improve overall performance. Also, MediaPipe is best trained for waist-up poses filmed on the webcam and tracks at most one person at a time. When an improved model is created in the future, a lot of new possibilities will open up in terms of the types of performances that can be created.

More Experiments

Cong
0311

🚧 Check back soon for the final performance 🚧

SvelteKit Β· TypeScript Β· Vite