Playing with Processing

I’ve been looking more and more into how generative art and design can complement our workflow. Mainly out of interest but also out of looking for ways to improve and evolve my own creative development and technique.

My first experiments with typography were created using Processing, a Java based development tool.

I was first introduced to Processing at university as part of a games development module where it was used as a tool to get across low level programming principles and for this reason I (naively) never explored it further for the powerful tool I’m now finding it to be. 8 years on and I regret that I’m only now scratching the surface of how creative this field of can be.

Day in, day out I extensively use the usual array of designers tools like Photoshop and Illustrator and almost always have a good idea of how to bring to life a concept that starts out in my head. But I’m becoming evermore captivated by the possibilities of working generatively and seeing what can create itself given some rules and variables. By providing a ‘construct’ with some rules, variables and introducing a degree of randomness I’m always fascinated by what inevitably presents itself whether it be typography, colour or grids, these basic principles can apply to almost anything. And what can be even more interesting is when you can watch the artwork generating itself as with the experiments shown.

See for yourself

fieldflow

How it works

This particular experiment was based on a tutorial found on the internet for Processing and is based on:

  • Starting off with a black and white image of a single letter
  • Drawing (initialising) a set number of particles (800) at random points within the character
  • Setting a global rotation variable on each particle

And then on each frame after this initial ‘draw’ phase, moving each particle again based on some rules:

  • Using a noise pattern, assigning where the particle should draw itself next
  • The noise pattern spans the whole canvas and is what makes the visualisation really interesting, especially when watching it generate. It applies randomness but does it in a global space in relation to the canvas which creates the ‘swarming’ effect, resulting in the particles eventually flowing into fewer and fewer streams.
  • Other variables include the global rotation which adds a bit more randomness to the movement of the particles as they swarm and the life of a particle which sets how long the particles run for

Using this particular tool for this particular purpose isn’t a new idea but with the recent interest in things like the mindblowing DeepDream project that Google recently opened up and seeing how the internets have used it to come up with sometimes nightmarish imagery, generated by an infinitely more complex algorithm than that which generated my poxy A. It’s an exciting field to play in and this type of experimenting and learning more often than not leads to fresh ideas and new insight which feeds directly back into our creative work.

A few examples of how it was taken further.

A S