Generative Art

Generative Art #

Generative World Building #

World generation #

Name & Link Purpose / Description Screenshot
roberthodgin - meander Generative maps of how rivers meander, not the tool, but at least it’s the process Meander
Map Generator A tool for building custom maps, envisioned for use in tabletop roleplaying games. mapgen
One Page Dungeon
Dungeon Map Doodler “Dungeon Map Doodler is a new, free to use drawing tool accessible from any web browser. Easily create maps for your favourite tabletop RPGs in minutes!”
Dungeon Scrawl
Fantasy City Generator This application generates a random medieval city layout of a requested size. The generation method is rather arbitrary, the goal is to produce a nice looking map, not an accurate model of a city.
Fantasy Map Generator make a map with tons of customization options including some about the culture and regions fmapgen
Space Creator Make a lil' solar system space creator
Genbrush ~15 USD
Random Country Generator
World Machine NOTE: This is only free for non-commercial use
World Painter This one is for Minecraft, but still potentially useful worldpainterex SOURCE:
DataCombs “3D Map editing utility for use with tabletop games like Dungeons & Dragons and Pathfinder” datacomb

Dungeon Generation in Enter The Gungeon (Boris The Brave)

Languages #

Name & Link Screenshot
Procedural Runes
Glyph Generator

Huge Playlist on Constructed Languages ( Conlang Critic on YouTube)

Some more cool examples, but lacking code:

Generative Textures and Geometry #

Name & Link Purpose / Description Screenshot / Demo
Forsynthia Check out these(1) pages (2) for more information forsynthia
Noisemaker Noise maker can make a ton of generative art pieces, as you can see at the right, this is a small sampling using a few of the included presets. Can be a pain to get to run as it needs Tensorflow
Noisey-Shapes (Github) “Making the computer draw weird shapes using basic trigonometry and different species of randomness(noise)” Noisey-Shapes
Superformula SVG Github repo

Pixel Sorting #

Source - u/Hunter_timeFR on Reddit

r/pixelsorting (Reddit)

PixelSorting using Processing (Github)

python pixelsort, with masks (Github)

Python again, but with animation support (Github)

Pixsort for Adobe After Effects (15 USD)

GenerateMe (Github) - lots of glitch effects

Fractal Art #

Name & Link Purpose Screenshot
Apophysis Fractal Flames [TODO]
Mandelbulb3D [TODO]
ifs Fractal Generator
Fractorium A GPU-Accelerated Fractal Flame Edito
Chaotica *

Chaotica is free for noncommercial use, and can render up to 1.23 megapixel images (e.g. 1280x960 resolution) and up to 30 second 480p animations without a licence. A Chaotica HD (45 USD) licence for casual users who want to create high quality desktop wallpapers up to 4 megapixels (e.g. 2560x1600) and 720p animations up to 3 minutes long is available at a very low price point. The professional Chaotica Studio (109 USD) licence has no still image or animation limitations at all. *prices are from time of writing

Generative Eyes #

Livecoding visuals #

r/livecoding (Reddit) - a site all about live coding

The Book of Shaders - “A gentle step-by-step guide through the abstract and complex universe of Fragment Shaders.”

Name & Link Purpsoe Screenshot / Demo
Tidal Cycles
p5-live (Github) live coding for p5.js - you’ll probably want the VS Code Extension
hydra (Github) “Set of tools for livecoding networked visuals. Inspired by analog modular synthesizers, these tools are an exploration into using streaming over the web for routing video sources and outputs in realtime. Hydra uses multiple framebuffers to allow dynamically mixing, compositing, and collaborating between connected browser-visual-streams. Coordinate and color transforms can be applied to each output via chained functions.”
LiveCodeLab “Livecodelab is a special secret place where you can make fancy “on-the-fly” 3d visuals and play awesomely offbeat (literally) sounds. “On-the-fly” meaning: as you type. Type just three letters: “box”, and boom! a box appears. No clicking play, no waiting, no nothing.”
Thixels by Ramsey Nasser (Github, Linux Only) PICO8 inspired live coding visual instrument.” “Gibber is a creative coding environment for audiovisual performance and composition. It contains features for audio synthesis and musical sequencing, 2d drawing, 3d scene construction and manipulation, and live-coding shaders.”
Ronin (Github) “Ronin is a procedural graphics tool designed to automate simple graphical tasks, like resizing, cropping, coloring, and generating algorithmic images. It interprets a minimal dialect of LISP, look at the examples to better understand how this all works.”
The Force (Github) … this one basically lacks all description. Best you’ll get is the api docs in the wiki node-basde tool for interactive realtime content on the web
Kodelife Realtime GPU shader editor (beta) “Cables is a tool for creating beautiful interactive content. With an easy to navigate interface and real time visuals, it allows for rapid prototyping and fast adjustments.” — Because this seems to be so ‘beta’ and I don’t see code or any indication on future pricing it’s probably not the best option at the moment
Nimp (Github) “Node-Based Image Manipulation Program”
vvvv - Heads up VVVV requires a licence for comercial use that is rather expensive “vvvv is a hybrid visual/textual live-programming environment for easy prototyping and development. It is designed to facilitate the handling of large media environments with physical interfaces, real-time motion graphics, audio and video that can interact with many users simultaneously.” vvvv
TouchDesigner (Free, but 600 USD for Commercial licence) “TouchDesigner is a visual development platform that equips you with the tools you need to create stunning realtime projects and rich user experiences. Whether you’re creating interactive media systems, architectural projections, live music visuals, or rapid-prototyping your latest ideas, TouchDesigner is the platform that can do it all.”

Video courtesy of Neurotypique

Nodes Not Yet Publiclly Released
Cyril (Github), Main site The Cyril programming language is designed for fast prototyping of visualisations and live coding visuals.
Eternal “node based audio / visual composition”

Creative Coding (Non Live) #

HackadayU Creative Code with Casey Hunt (YouTube)

Name & Link Purpose / Description Screenshot / Demo Link
Processing Language “Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts.”
Hype Framework “This is a collection of classes that performs heavy lifting tasks while using a minimal amount of code writing” This site is really weird? It seems to be emedding vimeo videos of static images, regardless, still worth checking out
P5.js “p5.js is a JavaScript library for creative coding, with a focus on making coding accessible and inclusive for artists, designers, educators, beginners, and anyone else!” — Processing can run P5.js scripts, you can also live code p5.js with some VSCode extensions as mentioned above
three.js “Three.js is a lightweight cross-browser JavaScript library/API used to create and display animated 3D computer graphics on a Web browser. Three.js scripts may be used in conjunction with the HTML5 canvas element, SVG or WebGL.” Three.js examples from Free Frontend and on the Three.js site itself
paper.js “Paper.js is an open source vector graphics scripting framework that runs on top of the HTML5 Canvas” Paper.js examples
rune.js “a JavaScript library for programming graphic design systems with SVG in both the browser or node.js” Move your mouse over the image on the homepage
rough.js “a small (<9kB gzipped) graphics library that lets you draw in a sketchy, hand-drawn-like, style.” roughjs example
StructureSynth “Structure Synth is a cross-platform application for generating 3D structures by specifying a design grammar”
OpenFrameworks openFrameworks is an open source C++ toolkit for creative coding.
openrndr “In short, OPENRNDR is a tool to create tools. It is an open source framework for creative coding, written in Kotlin for the Java VM that simplifies writing real-time interactive software” pleanty of examples on the site
Cinder “Cinder is a free and open source library for professional-quality creative coding in C++.” pleanty of examples on the site
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.” creative commons icon Agneya by thijs
Nannou a creative coding frame work for Rust, you may want to look at the work by MacTuitui (Twitter)
Valora Another creative coding framework for Rust curtain by turnage, 2020
immense A Rust library for describing 3D meshes with simple composable rules. rule![ tf![ Tf::saturation(0.8), Tf::hue(160.0), Replicate::n(36, vec![Tf::rz(10.0), Tf::ty(0.1)]), Replicate::n(36, vec![Tf::ry(10.0), Tf::tz(1.2), Tf::hue(3.4)]), ] => cube() ] is all that’s needed to generate the example on the right
ANSIedad ANSIedad
ASCII Generator
ShaderGif You can make gifs with shaders (glsl) and Javascript (either with raw canvas or with the coder-friendly p5.js library).
ShaderView “Shaderview is an app for creating visuals using OpenGl Shaders and it uses OSC messages to communicate changes in state. For example when live coding music you could send an OSC message when the drum sample played and in turn your shader could do something with that signal, like flashing of white.”

Data Visulization #

Name & Link Purpose / Description Screenshot / Demo
Nodebox “NodeBox makes it easy to do data visualisations, generative design and complex production challenges.”
d3js D3.js is a JavaScript library for manipulating documents based on data. D3 helps you bring data to life using HTML, SVG, and CSS.” The homepage has a ton of live demos
Apparatus a hybrid graphics editor / programming environment for creating interactive diagrams
Vega-Lite Vega-Lite is a high-level grammar of interactive graphics. It provides a concise, declarative JSON syntax to create an expressive range of visualizations for data analysis and presentation.”

Scripting/Generative tools IN other tools #

Name & Link Purpose Screenshot
Blender python API
Sorcar for Blender procedural modeling node-based system for Blender
Adobe Extend Script “A script is a series of commands that tells an application to perform a series of operations. You can use scripts in most Adobe applications to automate repetitive tasks, perform complex calculations, and even use some functionality not directly exposed through the graphical user interface.”
Krita SeExpr Fills the layer with a pattern specified through Disney Animation’s SeExpr expression language. - note that this is for FILL layers in krita Kritas SeExpr

Super resolution, frame interpolation, and other effects #

Name & Link Purpose Screenshot / Demo
Waifu-2x “Image Super-Resolution for Anime-style art using Deep Convolutional Neural Networks. And it supports photo.” - Works well on most things, not just anime art. The link is for a site where you can try it out online, but if you need to run it a lot you should probably run it locally. If you do I recomend this version is it’s compatible with basically any modern GPU. You may also want to check out Waifu2x-Extension-GUI.
Drain-App Dain-App is a free app that let you take any form of media like movies, stop-motion, anime, cartoons, sprites, etc and interpolate new frames, generating a bigger frame-rate from the original file. NOTE: drain-app only runs on systems with an NVDIA GPU
Neat auto lighting/shading software (Github pages site) “[…]. Based on this observation, we design an algorithm to both estimate the density of strokes in a digital painting using color geometry, and then generate novel lighting effects by mimicking artists' coarse-to-fine workflow.” artwork traced by ToS2P from an artwork by David Revoy under CC-BY license,
Pixatool (15 USD) convert ‘normal’ art into pixel art
picbreeder “Picbreeder is a collaborative art application based on an idea called evolutionary art, which is a technique that allows pictures to be bred almost like animals. For example, you can evolve a butterfly into a bat by selecting parents that look like bats”
Geon FX (10 USD) Particle effects generator/editor

For Plotters #

vpype - aims to be the one-stop-shop, Swiss Army knife for producing plotter-ready vector graphics. Here are, for illustration, a few examples of what it can do:

Other tools #

Sound Design #

!> There’s a LOT more tools listed in the music chapters, but there’s some more ‘for animation’ tools here:


Some inspiration #

Python + Quantum Research = Art + Saving 1000s hours of CPU time (Reddit)

Generative Constellations (Reddit)

Indra’s Net (Reddit)

Seriously, the three above pieces are some of my absolute favorite pieces. I think about them a lot.

Grant Custer’s Feed +


Echo/printf to write images in 5 LoC with zero libraries or headers (Vidar’s Blog)

10 innovative creative coding examples that are redefining programming (Shaping Design - Editor X)

META: Hacker News Submission on this page, with a bit of discussion

If you would like to support my development of OpGuides, please consider supporting me on Patreon or dropping me some spare change on Venmo @vegadeftwing - every little bit helps ❤️