I finally gave in and looked at Processing.org, the programming language for artists, and spent a good few hours today agape at the beauty and creativity on display in the exhibitions. Then I encountered Moovl, which stopped me in my tracks.
The 3D version of the creature editor was amazing, in that the creature was totally configurable. You could stretch and pull and tug or fatten it any way you liked, almost like working with clay. More importantly, you could add functional elements, like heads, mouths, eyes, tails, fins, claws, even legs and feet. Wright proceeded to add not two, but three legs to his creature. Then he let it loose.
Now, suddenly, his creature could walk. And he did so — he walked right out of the sea and onto the land. This incredible moment in the history of evolution was made even more remarkable by the technology behind it: the game had figured out, procedurally, how a creature would walk if it had three legs (it was a kind of lopsided gait, if you’re curious, with three steps: left, right, then middle.) No 3D modeler created the creature, and no 3D animator was required to make it move around — it was all created out of a gamer’s whim and a computer program smart enough to make it work.
Moovl can basically do that. Not in 3D, but it’s cool enough in 2D that I don’t mind that right now. Draw a hilariously simple doodle of a three-legged blob, train three of the feet to move, and voila, you’ve got a creature.
The official site is targeted to children, and the examples there aren’t very inspiring, even though the applet’s slightly better. I prefer the pared-down version and its examples over at Processing, especially “lovehurts” and “fistycuffs.”
Part of what’s amazing to me is how much those simple doodles in motion seem to suggest narratives. The story and the interactivity unite in these very logical rules and relationships which you have the power to build on or alter.
Something tells me that’s going to be the storytelling model that ultimately turns video games inside out.
More amazing stuff from Processing: