What is “generative art”?
People who follow this blog will probably know I like to experiment with generative visuals, or “generative art” as most people call it.
So what is this all about? I’m getting this question quite a lot when telling people what I do. And it isn’t easy to explain.
For those of you who have never heard of generative art, and want a little more in-depth information, here’s a short summary. I also inlcuded some tips and tricks to get started yourself.
Introduction to “generative art”
According to wikipedia the defenition of generative art is:
“Generative art refers to art that has been generated, composed, or constructed in an algorithmic manner through the use of systems defined by computer software algorithms, or similar mathematical or mechanical or randomised autonomous processes.”
The term “generative art” does not describe a specific visual style or ideology. It’s only a definition for the method used to create the artwork, which should have some degree of autonomy, typically resulting in unforeseen “mutations”. This is what makes generative art so interesting.
It’s not limited to visuals. A generative approach can also be used to create sculptures ,audio or music. For example Mozart’s “Musikalisches Würfelspiel” from 1757 is an early example of a generative music, because it was structured, but also contained randomness.This method is also used by certain architects, furniture designers, etc.
In this article however I’m only talking about 2D digital visuals, because that’s what I’m most familiar with. So, think of it as a digital canvas. Instead of using a pencil or a brush, a generative artist uses algorithms and code to draw lines, shapes and colors onto the canvas. Most of the time, a generative artist creates a system, and then lets the artwork “grow” over time. The artist knows more or less what the outcome will be, but because of the certain degree of autonomy in the process, each result is unique.
Most of the time the end result would take ages to draw by hand. Code is used to speed up the process.
The generative artist’s toolset
- Adobe Flash: Flash is my favorite tool for creating generative art. I’m not saying it’s the best, that’s a personal choice. I’m most comfortable with actionscript 3. Being able to work in an object oriented language, and to use tools like Flex/Flash builder are a huge plus.
- Processing: Processing would be my second choice. It’s a lot more powerful then Flash. And there are some very interesting libraries out there for video and audio processing. Your code can become a bit messy, and not all libraries work on all pc configurations, but still, if Flash isn’t powerful enough for what you want to do, Processing is probably your best choice.
- 3D Studio max, Maya and Blender: Yes, it’s also possible to create generative artworks with tools like 3D max or maya. In 3D max for example you can use max script. The downside is the community is quite small. There aren’t much tutorials out there, and the documentation is lacking. So, if you are starting out you are pretty much on your own.
In Blender you can use Python for scripting. I haven’t tried this yet, but this should be easier than maxscript.
- Structure synth: Structure Synth is a cross-platform application for generating 3D structures using algorithms.
- Cinder: Cinder is a community-developed, free and open source library for professional-quality creative coding in C++
- Context Free: Context Free is a program that generates images from written instructions called a grammar. The program follows the instructions in a few seconds to create images that can contain millions of shapes.
- Actionscript generated art: a Flickr group dedicated to generative art produced with actionscript
- Generator.x on Flickr: a Flickr group dedicated to generative art in general.
Getting started: tutorials & source code
- Open processing: OpenProcessing is an online community platform devoted to sharing and discussing Processing sketches in a collaborative, open-source environment. Tons of great processing examples can be found on this site.
- Code a Chaotic Composition Inspired by Joshua Davis: An actionscript tutorial aimed at starters written by Bruno Crociquia
- Creating generative art with Flash: An actionscript turorial by Chad Udell
- Abandonedart.org: lots of code examples on this website
- Complexification.net: Jared Tarbell’s website. The source code is available for most of the examples.
Yes, I know, I should really write some tutorials myself…
Generative artists you should check out
Here’s a list of generative artists whose site, blog or photostream is worth a click: