Generative art was my first love. By accident, I ended up being a student of the great Frieder Nake (https://en.wikipedia.org/wiki/Frieder_Nake) and that changed my future trajectory.
These were great times, but I think the book is not worth buying anymore. Sadly, AI-generated imagery sort of killed the mojo of algorithmic art for me, and I've been trying to get back to it for the last few years.
Reading this makes me want to fire up Processing [1] again. I remember spending hours and days with it in my early twenties. The immediacy of writing a few simple commands, hitting "Run" and seeing graphical output is still unsurpassed and created an almost addictive creative feedback loop that I haven't seen anywhere else yet.
Years ago. I dabbled in generative art. I even wrote a small Forth-like language to control the generation. It's basically controllable chaos with math or chaos within bounding patterns. The results were often unexpected. Some examples: https://imgur.com/a/UjWLy7s
Mine is also pixel coloring at the lowest level. I have a shading kernel in GPU doing the low level work, mainly applying colors recursively like fractal. I got sick of writing shader code so I make a high level language supporting math operations in concise expression that are compiled to shader code in GPU. The main thing is it supports functions. That let me reuse code and build up abstractions. E.g once I get the "ring" pattern settled, it's defined as a function and I can use it in other places, combine with other functions, and have it be called by other functions.
One of these days when I get some time, I'll formalize it and publish it.
This is beautiful. I'd really love to see some serious discourse about the place that generative art should have in our society and about what art really means in today's age of overconsumption.
I'm not sure art is still meant to be a widely shared experience and smarter people than should tackle this idea.
I'm glad people are interested in art discourse and exploring arts in general. Art is a very personal thing. Different people see arts in different ways. Yet there's some recurrent themes time after time.
I got my insight in art in musics and on why people love them so much. Musics and songs are basically repeatable patterns with slight variations in multiple dimensions, in pitch, in beat, in tone, in rhyme, in lyrics, etc. The human mind is a super pattern processing machine, as part of our evolution survival traits. Pattern brings structure, abstraction, and comfort. But strict repetitive patterns bore the mind. Human love patterns, but with variation and imperfection.
The human mind is very good in filling the missing pieces in a pattern, again from our evolution survival traits. Our ancestors could look at the tail of an animal and filled in the blank that it's a tiger hidden behind a big rock. The filling of missing pieces is by experience and learning. It really is the original generative AI.
I believe the variation and imperfection in patterns trigger the mind's filling the blank function, which triggers the generative function, which can run wild generating wide range of imagination. That's why arts can have different reaction from different people as each has their own life experience and thus different generated result.
I think art is patterns with variation, imperfection, and blanks at the most basic level. Computer generated art thus needs to fulfill that basic requirement at the least to be called art.
I started out in all the usual ways - inspired by Daniel Shiffman making generative art first using Processing, then p5.js, and now mostly I create art by writing shaders. Recently after being laid off from my job, I actually took my obsession further and released my very first mobile app - https://www.photogenesis.app - as a homage to generative art.
It's an app that applies various generative effects/techniques to your photos, letting you turn your photos into art (not using AI). I'm really proud of it and if you've been in the generative art space for a while you'll instantly recognise many of the techniques I use (circle packing, line walkers, mosaic grid patterns, marching squares, voronoi tessellation, etc.) pretty much directly inspired by various Coding Train videos.
I love the generative art space and plan to spend a lot more time coming up doing things in this area (as long as I can afford it) :-)
> I now have a small library of simulated materials: watercolor washes, dry brush strokes, felt-tip pens, cracked glaze, pencil fills. None of them are physically accurate. I’m not simulating fluid dynamics or anything like that, I don’t need to. They’re impressions, heuristics that capture enough of the character of a material to be convincing and evoke an emotion.
I find this to be a key insight. I've been working on a black-and-white film app for a while now (it's on my website in profile if you're curious), and in the early stages I spent time poring over academic papers that claim to build an actual physical model of how silver halide emulsions react to light.
I quickly realized this was a dead end because 1) they were horribly inefficient (it's not uncommon for photographers to have 50-100MP photos these days, and I don't want my emulator to take several minutes to preview/export a full image), and 2) the result didn't even look that good/close to actual film in the end (sometimes to the point where I wondered if the authors actually looked at real film, rather than get lost into their own physical/mathematical model of how film "should behave").
Forgetting the physics for a moment, and focusing instead on what things look and feel like, and how that can be closely approximated with real time computer graphics approach, yielded far better results.
Of course the physics can sometimes shed some light on why something is missing from your results, and give you vocabulary for the mechanics of it, but that doesn't mean you should try to emulate it accurately.
I read this interview with spktra/Josh Fagin and how he worked on digitally recreating how light scatters through animation cels, which creates a certain effect that is missing from digital animation - and it was validating to read a similar insight:
"The key isn’t simulating the science perfectly, but training your eye to recognize the character of analog light through film, so you can recreate the feeling of it."
Many years ago I went to a photoshop conference to try and get better. There was a talk about converting color photos to black and white. As a former bw film photog this interested me. Black and white film is a little wierd (some people put red filters on the lenses to increase contrast)
He showed some techniques. I think someone asked a question about the best way, but the presenter got a little ranty and basically said the way that looks best to your eye is the best way.
The aesthetics of B&W are super complex and very variable, so the idea that there's a "best" option for a format that covers a huge range of possible effects is indeed unhelpful.
But it's still useful to have some of those effects catalogued and easily accessible as presets. Photoshop doesn't quite do that, which on the one hand makes it hard for beginners to get a good look, but also leaves some space for those who want to go deeper to get more creative.
Yes, that makes sense to me. Black and white film is a very flexible medium - you can make very different prints from the same negative, it has lots of latitude to play with the contrast, dodge/burn, etc, so there’s not necessarily a single “best” interpretation.
And as you point out, at capture time you can use color filters to affect the image; processing too can lead to fairly different results based on what developer you use.
This is in contrast to color film, which I find to be much more rigid and narrow in how it’s meant to look and be processed; one could argue there’s much less range for interpretation from negative to final image (especially so with slide film, which completely falls apart if it’s ever so slightly over/under exposed).
One of my hobbies back in college was to write fun js fiddles [1]. It was super fun to have the time and curiosity to investigate something. I've been missing it more and more each passing day. I was super curious about generative art, procedural generation... I guess it is a negative term now, with AIs being able to create such complex stuff as video, audio and God knows what else. I was once working on a memes app where users could submit images. I was knee deep in how to identify duplicate images to keep my meme database "clean", so I was investigating cosine similarities... Few months went by and AI can do that better. Thats how ai feel now: AI can do it better, so why bother?
Hmm, isn't that a little like saying "now that we have cameras, no one needs to paint any more!" AIs can generate realistic video and images, but for me the fun of generative art is that it isn't realistic, it has texture, you can get a sense of what kind of patterns it will make, like echoes of the algorithm. Sure, you could probably prompt for some kind of geometric image, but if you asked for a little script that made them, then you could make tweaks and see what happens...
I used it create art, basically taking animal photos and using the dna sequence from that animal to recreate the photo using the 4 letters. (I did four passes using different size letters and layered in Gimp). People seem to like them, and they got into an art:science show.
Both written by the same guy who wrote the Janet for Mortals book, about the Janet language, which supports both those sites.
I'm really wanted to see if I could combine those tools to make Arabic art inspired generative art. Anyone know of any projects which are doing that? There is a lot of crossover in modern generative art and ancient Arabic art.
Generative art inspired by Arabic art happens to be a rabbit hole I went down last year and still have my notes on. Research on the topic seems to have waxed and waned sufficiently long ago that the best resources I found have suffered from bit rot, thankfully much of it can still be accessed through the Internet Archive:
https://www.amazon.com.au/Generative-Design-Visualize-Progra... for anyone who is interested in a guided experience of writing this stuff, I have this book. Filled with examples, conceptual explanations (sometimes having someone explain something very simple to you is helpful!) and a lot of nice pictures.
I think there are newer versions of this book, though I haven't tried finding it. It's a hefty coffee table book as-is
I used to make generative art around 15 years ago as well, seems not much has changed in this aspect (note that this is not generative AI art). A few years later I remember using Processing.js after reading The Nature Of Code by Dan Shiffman as well, fun times. How time flies.
The #creativecoding and #genart tags on most social media networks will get you a front row seat to the international generative art community -- it's a very creative crowd!
[0lhttps://github.com/WickedSmoke/evolvotron
[1]https://xcfgeneticart.blogspot.com/?m=1
Eventually, this led me to writing my own indie book on generative art with Go: https://p5v.gumroad.com/l/generative-art-in-golang, which led me to a talk I gave on GopherCon Europe: https://youtu.be/NtBTNllI_LY?si=GMePA3CfVQZJq2O7
These were great times, but I think the book is not worth buying anymore. Sadly, AI-generated imagery sort of killed the mojo of algorithmic art for me, and I've been trying to get back to it for the last few years.
[1] https://processing.org
It's what I doodle with to generate images using a stack based program per pixel.
Every character is a stack operation, you have 50 characters to make something special.
Mine is also pixel coloring at the lowest level. I have a shading kernel in GPU doing the low level work, mainly applying colors recursively like fractal. I got sick of writing shader code so I make a high level language supporting math operations in concise expression that are compiled to shader code in GPU. The main thing is it supports functions. That let me reuse code and build up abstractions. E.g once I get the "ring" pattern settled, it's defined as a function and I can use it in other places, combine with other functions, and have it be called by other functions.
One of these days when I get some time, I'll formalize it and publish it.
I'm not sure art is still meant to be a widely shared experience and smarter people than should tackle this idea.
I'm glad people are interested in art discourse and exploring arts in general. Art is a very personal thing. Different people see arts in different ways. Yet there's some recurrent themes time after time.
I got my insight in art in musics and on why people love them so much. Musics and songs are basically repeatable patterns with slight variations in multiple dimensions, in pitch, in beat, in tone, in rhyme, in lyrics, etc. The human mind is a super pattern processing machine, as part of our evolution survival traits. Pattern brings structure, abstraction, and comfort. But strict repetitive patterns bore the mind. Human love patterns, but with variation and imperfection.
The human mind is very good in filling the missing pieces in a pattern, again from our evolution survival traits. Our ancestors could look at the tail of an animal and filled in the blank that it's a tiger hidden behind a big rock. The filling of missing pieces is by experience and learning. It really is the original generative AI.
I believe the variation and imperfection in patterns trigger the mind's filling the blank function, which triggers the generative function, which can run wild generating wide range of imagination. That's why arts can have different reaction from different people as each has their own life experience and thus different generated result.
I think art is patterns with variation, imperfection, and blanks at the most basic level. Computer generated art thus needs to fulfill that basic requirement at the least to be called art.
I started out in all the usual ways - inspired by Daniel Shiffman making generative art first using Processing, then p5.js, and now mostly I create art by writing shaders. Recently after being laid off from my job, I actually took my obsession further and released my very first mobile app - https://www.photogenesis.app - as a homage to generative art.
It's an app that applies various generative effects/techniques to your photos, letting you turn your photos into art (not using AI). I'm really proud of it and if you've been in the generative art space for a while you'll instantly recognise many of the techniques I use (circle packing, line walkers, mosaic grid patterns, marching squares, voronoi tessellation, etc.) pretty much directly inspired by various Coding Train videos.
I love the generative art space and plan to spend a lot more time coming up doing things in this area (as long as I can afford it) :-)
I find this to be a key insight. I've been working on a black-and-white film app for a while now (it's on my website in profile if you're curious), and in the early stages I spent time poring over academic papers that claim to build an actual physical model of how silver halide emulsions react to light.
I quickly realized this was a dead end because 1) they were horribly inefficient (it's not uncommon for photographers to have 50-100MP photos these days, and I don't want my emulator to take several minutes to preview/export a full image), and 2) the result didn't even look that good/close to actual film in the end (sometimes to the point where I wondered if the authors actually looked at real film, rather than get lost into their own physical/mathematical model of how film "should behave").
Forgetting the physics for a moment, and focusing instead on what things look and feel like, and how that can be closely approximated with real time computer graphics approach, yielded far better results.
Of course the physics can sometimes shed some light on why something is missing from your results, and give you vocabulary for the mechanics of it, but that doesn't mean you should try to emulate it accurately.
I read this interview with spktra/Josh Fagin and how he worked on digitally recreating how light scatters through animation cels, which creates a certain effect that is missing from digital animation - and it was validating to read a similar insight:
"The key isn’t simulating the science perfectly, but training your eye to recognize the character of analog light through film, so you can recreate the feeling of it."
https://animationobsessive.substack.com/p/dangerous-light
He showed some techniques. I think someone asked a question about the best way, but the presenter got a little ranty and basically said the way that looks best to your eye is the best way.
But it's still useful to have some of those effects catalogued and easily accessible as presets. Photoshop doesn't quite do that, which on the one hand makes it hard for beginners to get a good look, but also leaves some space for those who want to go deeper to get more creative.
And as you point out, at capture time you can use color filters to affect the image; processing too can lead to fairly different results based on what developer you use.
This is in contrast to color film, which I find to be much more rigid and narrow in how it’s meant to look and be processed; one could argue there’s much less range for interpretation from negative to final image (especially so with slide film, which completely falls apart if it’s ever so slightly over/under exposed).
1 - https://jsfiddle.net/u/victorqribeiro
I used it create art, basically taking animal photos and using the dna sequence from that animal to recreate the photo using the 4 letters. (I did four passes using different size letters and layered in Gimp). People seem to like them, and they got into an art:science show.
https://p5js.org/
Coding train has a lot of videos on using p5.js Some of them more sophisticated than the childish iconography appears. It’s pretty fun.
https://thecodingtrain.com/tracks
https://bauble.studio/
And
https://toodle.studio/
Both written by the same guy who wrote the Janet for Mortals book, about the Janet language, which supports both those sites.
I'm really wanted to see if I could combine those tools to make Arabic art inspired generative art. Anyone know of any projects which are doing that? There is a lot of crossover in modern generative art and ancient Arabic art.
https://web.archive.org/web/20140701114342/http://www.cgl.uw...
https://web.archive.org/web/20180426122308/http://www.wozzec...
Of course the topic is still alive to some extent, but the above 2 "dead" homepages remain some of the best entry points I've found overall.
One major truth discovered:
Art is always in the eye of the beholder.
I like to think of fine art as a subjective human expression to stir emotion.
I think there are newer versions of this book, though I haven't tried finding it. It's a hefty coffee table book as-is
What a strange claim. How late is too late to be considered early?