It's been a long time and there have been many variations
but I finally setteled down for this as my final design solution:
(as always, click the picture to see the sketch) |
Some features:
It has a carefully crafted interaction design where the way the waterfall reacts in different ways depending on how you engage with it. For example, if the input is very smooth, so is the response from the waterfall will also be smooth, reflected in both sound and visuals. The same would apply to a very hectic interaction but the waterfall will always tend slightly to the smother side of things, as it is the designed nature of the waterfall.
The visual part it strongly linked to the audio experience with colour being a important link between them.
(Technical) I've made quite a few adjustments to get what I think the best result:
Since the amount of the water particles depend on mouse movement and it had the best effect when there were a maximum of ~120 particles at once on the screen (when constantly moving the mouse), I modeled the time frame given for each particle in the system to fit this optimum limit. But this limit, as it was fairly high, had implications on the performance of the sketch: my initial solution was to give a track to each particle for they could do their neat sound effect, but this became a problem with the minim library not supporting this amount and therefore giving quite nasty results. A solution I was quite happy with was to only play a fading sound when the water is emitted and I found that this would fit the nature of what I intended the waterfall to be much better.