A bunch of balls bouncing between two walls in a zero-gravity environment. A linear gradient is used in order to generate rainbow colors which are then assigned to each ball. Also, each ball has an associated note and every time a collision occurs, the corresponding note is played using Tone.js PolySynth. It all comes together to create a cool polyrhythmic experience.
An interactive 2D physics simulation by Dimitris, running in the browser on Physion. Nothing to install. Open it to run the simulation, change any object's properties, or copy it into a scene of your own.
Tags: audio, tonejs, polyrhythm