Section 1 of 14

Overview

A wallpaper drawn in smooth, in the Multibrot d = 4 family.

Multibrot d = 4z⁴ + c

A wallpaper drawn in smooth, in the Phoenix family.

Phoenixz² + c + p·z₋₁

A wallpaper drawn in smooth, in the Julia d = 4 family.

Julia d = 4z⁴ + c

A wallpaper drawn in closest trap angle over smooth, in the Mandelbrot family.

Mandelbrotz² + c

A wallpaper drawn in trap spread angle over smooth, in the Julia family.

Juliaz² + c

A wallpaper drawn in cross trap over smooth, in the Multibrot d = 4 family.

Multibrot d = 4z⁴ + c

Wallpapers produced by the fractal search. The pipeline finds promising locations automatically, renders them under many palettes and rendering modes, and uses trained judges to score both the locations and the finished images. The first three use the smooth rendering; the last three show three alternative rendering modes.

For many years my desktop background cycled through fractal wallpapers gathered from around the internet. Seeing the same ones over and over grew repetitive, and my daughter was fascinated specifically by dark pink fractals, so I built fractal-wallpapers, a program to find, color, and stylize new ones automatically. Producing a finished fractal wallpaper involves several artistic choices: picking a location, selecting and aligning palettes, stylizing, and layering post-processing. That work is usually done by hand, in tools like UltraFractal or Chaotica. I'm not trying to match that level of hand-tuned artistry on any single image. The goal is a system that continually produces wallpapers I would want to use, spanning a wide range of structures, fractal families, color styles, and rendering effects. Computing the fractal itself is only a small part of that. The system also has to decide where to point the camera, how to turn what it sees into an image, and which of the results are worth keeping.

Everything here lives in the flat complex plane: two-dimensional escape-time fractals, the most popular of which is the famous Mandelbrot set. Other beautiful fractal worlds are outside this project's scope, among them the 3D Mandelbulb, fractal flames, and quaternion Julia sets.

Most pictures on these pages carry a link that opens the fractal explorer at exactly the view you are looking at.

I organized the system around three decisions. Which location to render: a fractal family, its constants, and a frame in the complex plane. Which rendering mode and which palette to use there. And which of the finished candidates belong in the gallery. Each decision is one part of a pipeline, and each part feeds the next:

1 · Find good locations

A guided walk descends through a family, keeping the frames worth drawing.

structural gateslocation judge

A location the walk found, drawn in one neutral palette.
A location the walk found, drawn in one neutral palette.
A location the walk found, drawn in one neutral palette.

2 · Render them beautifully

One frame is drawn many ways: several modes, and a neighborhood of palettes.

the mode roster · 32 palettes a locationwallpaper judge

The followed location colored through one palette, with that palette's gradient under it.

the pick

The followed location colored through one palette, with that palette's gradient under it.
The followed location colored through one palette, with that palette's gradient under it.
The followed location colored through one palette, with that palette's gradient under it.

3 · Gallery curation

A gallery is chosen out of the pool those attempts fill: quality first, then range.

one seat to a location · no near-duplicatescolor balance · every mode

A finished wallpaper the gallery solve chose.
A finished wallpaper the gallery solve chose.
A finished wallpaper the gallery solve chose.
Pipeline overview. A guided walk proposes locations, which the location judge scores. Admitted locations are rendered under many rendering mode and palette combinations with automatic tone balancing, and the wallpaper judge scores the resulting images. Gallery curation then chooses a diverse set of wallpapers out of the candidate pool.

Finding good locations: a guided walk through each fractal family descends toward structure and away from both emptiness and pure chaos. A small neural network trained to predict my ratings of location quality scores each candidate as the walk goes. The walk keeps the good ones in a growing pool of locations. Each one is just a frame in the complex plane, with no colors or style yet (training judges).

Finding good wallpapers: each location in the pool is then drawn many ways, in several rendering modes and under a spread of palettes, with the picture's tones balanced automatically. A second neural network, trained on my ratings of finished pictures, scores each attempt, and the best attempts at each place join a pool of candidate wallpapers, with their scores attached (rendering fundamentals, rendering modes, color palettes).

Gallery curation: a gallery of any size is chosen out of that pool, under constraints on quality and on the set as a whole. Near-duplicate pictures are collapsed, no single family of color crowds out the rest, and each rendering mode gets a minimum share of the gallery when the pool can supply it.

Two ideas run through all three parts. Anywhere the system has to decide whether something is good, it asks one of the neural networks, which I call judges, and they're trained to stand in for my taste. The other is that the work accumulates. The location pool only grows, and each location keeps its strongest candidate renders, so I can always re-run curation over everything collected so far.

I built the whole system (search, rendering, training, and curation) to run unattended on a single desktop machine with one ordinary GPU. The pipeline judges every candidate at a small size. When a wallpaper makes it into a release, I render it again at full size with several samples per pixel, so I can regenerate the collection at any resolution without repeating the search.

Everything here is backed by a working open-source repository, fractal-wallpapers, and every image on this site came out of it. The same renderer is also compiled to run in a browser, which is what draws the fractal explorer live on this site: every family, each rendering mode the article describes, and a broad selection of palettes, panned and zoomed by hand. The repository includes the code, the trained models, and the labeled datasets behind them. The finished wallpapers can be browsed in the explorer's Gallery tab, or downloaded at full resolution as wallpaper packs.