Dithering

How mathematics turns limitations into art — controlled noise, ordered patterns, and error that becomes texture.

Drag the handle. Switch algorithms. Watch the error travel.

DEMO 01 / LIVE COMPAREFloyd–Steinberg

From vibration to digital images

The word dither is related to the Middle English didderen — “to tremble” or “to shake.”

One of the well-known early applications of this principle dates back to World War II. Mechanical computing devices used in aviation could operate more accurately because of vibration: it reduced the effects of friction and “sticking” between moving parts. Small vibration motors were later used to create this effect.

But true digital dithering came later. In 1961, Lawrence Roberts explored the use of pseudorandom noise to reduce visible quantization patterns in television images in his MIT master's thesis.

Floyd & Steinberg diffuse quantization error to neighbors — soft, organic texture.

When the colors ran out

In 1973, Bryce Bayer introduced his method of ordered dithering. Instead of using random noise, the image is processed with a predefined threshold matrix. The matrix repeats across the image and determines where different pixel values should appear.

The result is that a limited set of colors can visually produce a much wider range of shades.

One important detail: this is not the same Bayer filter used in digital camera sensors. The names are connected because both inventions were created by Bryce Bayer.

DEMO 02 / ORDERED DITHERINGDirect reduction ↔ Bayer matrix
No dithering
Bayer matrix

An error that becomes an image

In 1976, Robert Floyd and Louis Steinberg introduced Floyd–Steinberg dithering. Instead of processing each pixel independently, the algorithm calculates the quantization error and distributes it to neighboring pixels.

If a pixel should be gray but the device can only display black or white, the difference does not simply disappear. It becomes information for the pixels that follow.

7/16 · 3/16 · 5/16 · 1/16

This simple formula gave rise to an entire family of error-diffusion algorithms.

DEMO 03 / FOLLOW THE ERRORReady

Floyd–Steinberg

Error leaves X and lands on the lit neighbors

7/16 · 3/16 · 5/16 · 1/16

Waiting to start…

Apple and Atkinson

In the early 1980s, Bill Atkinson developed his own dithering algorithm for the Macintosh. It distributed only part of the error — six eighths — leaving the remaining 25% undistributed. This helped produce the distinctive high-contrast and textured look of the Macintosh's monochrome display.

Dithering was no longer just a way to compensate for hardware limitations. It was becoming part of a visual language.

Floyd–Steinberg softer transitions
Atkinson higher contrast
Same source, same two-color palette — only the error kernel changes.

From limitation to style

During the era of EGA and other limited-color graphics systems, dithering became an important tool for artists. One well-known example is the work of Mark Ferrari for Lucasfilm Games, where limited palettes were transformed into much richer-looking images through dithering.

Later, the technique outlived the hardware limitations that created the need for it.

Lucas Pope's Return of the Obra Dinn uses dithering not because the game lacks colors, but because that is how the game is meant to look. In 2021, developer Surma published an article titled Ditherpunk, helping popularize the name for this kind of visual aesthetic.

Why does it work?

An image may contain fewer available colors or shades than needed for an exact reproduction. Dithering distributes those limited values across space so that, over a small area, the image is perceived as something in between.

Two colors can become a third color in perception.

Black and white become gray.
Two nearby colors begin to look like a new shade.
A lack of information becomes texture.

Mathematics does not eliminate the limitation — it learns how to work with it.

Close — pure pixels
1× — texture reads
Far — tones blend

The main approaches

Threshold

Each pixel is compared against a fixed threshold. Sharp black-and-white, no intermediate shades.

Random

The threshold changes randomly from pixel to pixel. Grainy, less structured.

Ordered

A repeating threshold matrix (Bayer). Predictable, fast, instantly recognizable.

Error diffusion

Error spills to neighbors: Floyd–Steinberg, Atkinson, Jarvis, Sierra, Stucki…

Each one has its own balance between detail, contrast, texture, and computational cost. Specialized cousins — halftone, stipple, ASCII — treat dithering as a foundation for print, CRT, and glitch aesthetics.

DEMO 04 / MINI LABPlay with the knobs

So why Dither Yuki?

Because dithering stopped being just a way to “cheat” limited hardware a long time ago.

Today, it is a visual tool in its own right.

Dither Yuki was created as a space for experimenting with these limitations — turning limited palettes, individual pixels, and mathematical algorithms into deliberate visual aesthetics.

Download Dither Yuki for Mac

The macOS build of Dither Yuki is coming soon.

We’re finishing distribution setup so you can install without extra security hurdles. Check back shortly.

Download Dither Yuki for Windows

The Windows build of Dither Yuki is coming soon.

We’re finishing distribution setup so you can install without extra security hurdles. Check back shortly.