Things to get you started with generative art
I have been drawing with code since some time. Usually, I code and publish on Observable. Seeing some of my work, a couple of folks asked me, are there any resources to get started with generative art. Here are some that helped me:
- Programming Design Systems by Rune Madsen: A good from the scratch guide to draw with code. The code examples are in p5.js.
- The Coding Train by Daniel Shiffman: An exhaustive collection of resources. You’ll find tutorials from using a variable to neural networks. This is my first destination to learn about any new concepts.
- Resources by Matt DesLauriers:
- Creative Coding with Canvas & WebGL workshop on FrontendMasters (Paid): This workshop taught me how to structure the idea (and code) while making these graphics. For example, separate the data from the drawing logic. It helps you to experiment by replacing the drawing logic to make something different with the same data. Or, you can swap non-random data with random data to create something different. This helped me to do more and more graphics.
- canvas-sketch: This collection of tools gets you started with an environment with live reloading, print-friendly graphics, export to video and many.
- canvas-sketch-util: This is a collection of utility functions related to Random (noise), Maths, Geometry, and others. I use one or the other function from this collection every time I do generative art.
- Books: I haven’t followed them from start to end. But, I have learned some tricks by skimming these:
- Nature of Code by Daniel Shiffman
- Generative Design: Visualize, Program, and Create with Processing
Good luck with your generative art journey. If you have any questions while learning generative art, feel free to mail me.
Excellent list! I listed a few that I've loved here, including Golan's recent book that I picked up recently: github.com/rasagy/generat…
I also loooove this speedrun of generative art concepts by Tim: youtube.com/watch?v=4Se0_w…
Alexandre B A Villares☂🐍🧄💉💉💉
For those who like Python: py5.ixora.io