Archive for the Category Processing

 
 

Scrawling with Processing

Its Friday, and I told myself I would get some of my processing sketches up on the blog earlier this week.   This sketch is a study I was doing on fractal attractors.   A large portion of this code is taken directly from the work of David Bollinger and his FungiScrawl Processing work.   I found playing with this sketch to be very mesmerizing, and I slowly started to tweak David’s code to make subtle artistic changes in how the attractors were rendering.   

For those of you Action Script junkies, reading the source code of Processing should be fairly easy, as it is Java.   One of the coolest things about this code is that David is dumping everything into an off-screen pixel-buffer and performing his own anti-aliasing and via a 4 pass sub-sampling algorithm.    So that might sound really sophisticated and complicated, but the code is actually very easy to read and was very approachable.    Some of what I have learned here I suspect will make its way into the guts of Degrafa at some point.

Early this week, quite by coincidence, Juan at scalenine showed me this by Matt Kenefick, which is almost exactly like what I have done here, but with Flex and AIR… way cool Matt!

I have several other features in this sketch (application in Processing parlance) that I was exploring, like being able to record certain gestures and then paste them in later, as well as other neat ways to manipulate the attractor code for different visual effects.

Anemone source code

Anemone Processing Tool

In doing various experiments with Processing, I have really found that it has been immensely helpful to see the source code of others.  Since I consider Processing more for artwork/play, than business, I see algorithms as just different tools to accomplish certain artistic goals.   It is really amazing when you can combine different pieces of code from different sources to achieve really interesting and amazing results.

So like the work I have done with Adobe Flex I am releasing some of my experiments for others to see/use. But unlike my work in Flex, I am not making too much effort to “clean” up the source code, so please view source at your own peril, as lots of stuff is just hacked together in a very brittle fashion.

So have at it and enjoy.

A Few Processing Sketches

Here are a couple of sketches I was playing with today that were derivatives of the Fireworks subsystem (okay lets be honest, the subsystem is less than 100 lines of code)


Processing – A Fireworks Show

This is my first attempt at creating something in Processing which I started to work with a few days ago.  Originally my goal was to create a fireworks show that resembled what I saw this 4th of July on the Mall in Washington DC, with my wife, two boys, and my sisters family.  I had fond memories of that trip and was hoping to re-create it in some artwork.  I am not sure this qualifies as artwork, but when my three year old came into my office, saw this running and instantly exclaimed “Fireworks Daddy!  Auntie Kim!” I knew I had reached a modicum of success.

With Processing you can very rapidly iterate and experiment with sketches, this version is about my 5th iteration, after experimenting with some Handel (Classical) I settled on Radiohead (my favorite band.)  Each iteration had its own unique appeal, and some things happened quite by accident.  For instance the circles that form and shoot off were a result of tweaking one number by .01.  I continue to be impressed with the power of processing, and I will probably see if something similar can be done in Flash.   
I am also using this work to serve as partial inspiration for what I am doing within Degrafa and with the Flash Player.
You will need the java runtime installed and the appropriate security permissions to view this, also please be patient when it launches as it is loading up a 4mb song.    Click here to view.

Processing is Amazing



I recently discovered Processing, and I am still in awe of what can be created with it.   For those of you not familiar with Processing, it is a c syntax (pretty much java) language created at MIT’s multi-media center designed to be used by artists and non-programmers to create visual/animated/physical works of art.   The primer written by two of Processing’s creators walks a person with no prior programming experience through learning to program.  

As someone who has been programming since I was 10 years old and close to 30 years now, I found their approach so simple, powerful, and very approachable.   Probably even more valuable to me was the plethora of examples that come with the simple IDE.   Full particle and physics systems encompassed in less than 100 lines of code!  OpenGL support, texture, uvt mapping, typography, and the list goes on.

I see some of what has been accomplished with Processing as the inspiration of what I think will be possible with Degrafa, and I look forward to seeing how far I can push the boundaries of what is possible in Flex/Flash by adopting similar constructs within Degrafa.  The interesting twist Degrafa will bring is that we may be able to step away from procedural abstracts and work directly with declarative ones.   Degrafa repeaters is one example of how this might manifest.

The animation at the top of this entry was created by Glenn Marshall, who just started working with Processing, but obviously has an incredible amount of artistic talent.   What I find just mind blowing is that the animation he created is all done procedurally using sin/cos, looping, recursion and math.   There was no use of After Effects, 3DS, or any other tool that translates analog inputs (hand drawing) into something digital, this is purely abstract programming – which just adds a sublime level of beauty to the finished work.  
Note: Watch the video in its entirety it gets better, and better, and better ….