July 10, 2015

Generative Art

When you com­bine code + art you end up with Gen­er­a­tive Design. I love mess­ing around with gen­er­a­tive art because often what you cre­ate is not what you had in mind, but rather some­thing that emerges over time.

I’ve used Pro­cess­ing to cre­ate most of images you’ll see below. Pro­cess­ing is a Java based app. Pro­cess­ing has a pret­ty small learn­ing curve, and gets you up and run­ning quick. Although most of the stuff I’ve worked on here is manip­u­lat­ing images, you can do all sorts of things with Processing.

Niagara Skyline

This image began as beau­ti­ful Nia­gara sun­set, that I then processed the hell out of with Insta­gram fil­ters, before bring­ing it into pro­cess­ing. This image, and most of the oth­er explo­rations here work by tak­ing all the pix­els in an image, and then con­vert­ing them to a shape (square, cir­cle, rec­tan­gle, or ellipse), and then once you have that shape, hav­ing it’s para­me­ters mod­i­fied by the infor­ma­tion in the image. For exam­ple, in a lot of these there’s rota­tion, or size, that’s based on the col­or val­ue of each pix­el. This is a great way to get a lot of vari­ety from a sim­ple image.


The two images you see below are imag­ines of flocks. Flocks, oth­er­wise know as Boids (How some­one from Boston would pro­nounce Birds) are based on the work of Craig Reynolds, who deter­mined that real­is­tic flocks could be sim­u­lat­ed through three sim­ple principles:

  • Sep­a­ra­tion:Steer to avoid crowd­ing local flock mates
  • Align­ment: Steer toward the aver­age head­ing of local flock mates
  • Cohe­sion: Steer to move the aver­age posi­tion of local flock mates


These flow­ers fol­low the sim­i­lar pat­terns as the first image — take the image, con­vert to shapes, and then adjust based on image infor­ma­tion, such as posi­tion, bright­ness, etc. Some of these images have been mod­i­fied in pho­to­shop to exper­i­ment with dif­fer­ent col­or patterns.

How can I get started?

One of the best resources I’ve found for inspi­ra­tion, and also instruc­tion is the book Gen­er­a­tive Design, by Hart­mut Bohnack­er, Benedikt Gros, Julia Labb, and Claudius Lazze­roni. It’s avail­able in Eng­lish as well as Ger­man. Cheers!

Gen­er­a­tive Design by Hart­mut Bohnack­er, Benedikt Gros, Julia Labb, and Claudius Lazzeroni