BallDroppings is a fascinating audio-visual software toy written by Josh Nimoy. Curiously, its title is also a proper WikiName.
It is available for Windows and Mac OS X at http://www.jtnimoy.com/itp/balldroppings/
Quote from the author's site:
-
- BallDroppings is an addicting and noisy play-toy. It can also be seen as an emergence game. My brother Marc takes this software seriously as an audio-visual performance instrument. Balls fall from the top of the screen and bounce off the lines you are drawing with the mouse. The balls make a percussive and melodic sound, whose pitch depends on how fast the ball is moving when it hits the line.
I discovered this last night and had as much fun with it as I did with SodaConstructor. It is fascinating to construct a simple environment as the noisy particles start bouncing around and then have an emergent melody evolve as you're playing with it.
You can decide for yourself if you like the physics model or not. The rules appear to be something like this:
- 'ping' frequency is proportional to a particle's speed at impact
- line lengths don't appear to have any impact on the sounds they produce or their collision properties
- the angle of reflection for a bounce is deterministic, but it is not the standard (physical model) angle of incidence reflected about the surface normal
- particles bounce away sometimes in the normal direction, sometimes along the incoming vector or it's reflection, and sometimes at a bizarre sharp angle to the surface
- it's possible for particles to pass through the lines (mostly on verticals) - this appears to be a numerical robustness issue with the collision maths
- a particle can collide multiple times with a line in a single pass, especially if it tries to leave at a sharp angle
- particles that get trapped can disappear (this may be a function of the rate at which they collide)
- if the program is minimized (on Windows at least), the simulation will run very fast, but the particle release rate does not increase proportionally
My suggestions include:
- don't trap the particles in small areas - this just makes a lot of noise
- try some very low energy collisions (make a line placed up near the apex of a ballistic path)
- try setting up lines with power-of-2 spacing to create harmonics
- try letting the particles bounce down slopes of various degrees (you can get some interesting wave patterns, beats, and interference)
- let some particles escape the world before you seal up all the exits, and then add more elaborate exit paths
- have fun
--
LucasAckerman
Why is the physics the way it is? The angle of incidence calculation seems off, or are they trying to model sticky balls with spin?
Perhaps the creator wanted to make the simplest situation (balls dropping onto a single horizontal line) interesting -- depending on how close the origin point is to the line, the balls can form a nice wave pattern spread out horizontally. Note too that the balls have elasticity > 1, so if you don't enclose them they will eventually build up energy to escape off-screen.
But it's counter-intuituve. I've spent 38 years building common sense about how balls bounce and I'd like to apply it to this toy. A ball arcs in from the left, hits a horizontal line and bounces back to the left. If I wanted it to bounce left I would have drawn a diagonal line.
A challenge: set up lines so that the impacts form a recognizable melody. Bach's Musical Offering, anyone?
CategorySoftwareToy?, CategoryExternalLink