Processing My Own Requests
This evening I got it into my mind to learn how to do some stuff with hip-young-thing programming language Processing. So, I grabbed Rilla’s borrowed copy of Learning Processing, downloaded the development environment, and set to work.
It’s a pretty great language to learn and do interesting things in, actually. Using the book I quickly typed in a few tutorial exercises to do with using the webcam on my macbook. Creating live pixelation, background removal, and colour detection, for instance. All cool stuff and gratifyingly fast to input, understand, and execute (I cycled through a bunch of stuff in half an hour or so).
Those lessons learned, I turned my mind to actually making my own thing. And now, of course, I’m kind of bogged down in the details of how to make it work properly. It shouldn’t be as hard as it is, but it is.
So, at present I’m implementing a platformer (aren’t we all?). The “awesome” is that you’re meant to create the platforms/world yourself during a setup period by “painting” the ground with light. That is, the webcam activates and registers any and all bright lights shone at it, and then represents those areas of the screen where there was bright light as terrain. You can see this working in the image that goes with this post – with the yellow being the terrain and the orange square being the avatar. All well and good, and makes for some interesting shapes.
The next stupid step is just implementing the platformer bit, which is, if we’re being honest, kind of trivially easy and something I’ve done about five million times in the past. Except that every single time… I forget. So I’m stuck in the evil throes of collision detection for the billionth time, hating it, obsessed with it. Once that works, though, the “game” effectively exists, so I’m not far off. I’ve got a bunch of ideas for how to make it more “gamelike” once I’ve got the basic stuff implemented, as well as some other interesting games based on related ideas.
All this is to say that Processing is definitely a language to be reckoned with, and that the liberation from Flash’s graphics front-end and its stage metaphor has been more liberating than I’d expected. I’ll start trying to post some of these experiments on stimulusresponse once I finish some stuff and work out how to get access to the webcam for Processing programs embedded on the web (if I can at all).