← All documentation

Field notes / Guide

VintageDither for After Effects Manual

Introduction

VintageDither transforms images and video using limited color palettes, dithering, pixelation and CRT textures. Start with a complete preset, choose a Retro Look, or capture a palette from your own image with Scene Adaptive. You can continue adjusting the controls after applying a look.

Apply the effect directly to an image layer or to an adjustment layer above a composition. On an adjustment layer, VintageDither processes the image received from the layers underneath.

Requirements and compatibility

VintageDither 1.0.0 is for Windows x64. Host testing covers Adobe After Effects 2026 (26.5). Other After Effects versions, macOS and Premiere Pro are not verified. An Adobe After Effects installation is required and is not included. CPU rendering is the default. Experimental GPU palette matching has been tested on NVIDIA GeForce RTX 4080 and automatically falls back to CPU when unavailable. Multi-Frame Rendering is not enabled in this version.

Installation

Using install.exe

  1. Extract the complete downloaded ZIP into a folder on C:.
  2. Save your work and close After Effects.
  3. Run install.exe and allow Windows to write to the selected Program Files folder.
  4. Confirm the destination. The default is the After Effects 2026 plug-in folder: C:\Program Files\Adobe\Adobe After Effects 2026\Support Files\Plug-ins\VintageDither.
  5. Complete installation, restart After Effects and search for VintageDither in Effects & Presets. Apply it to footage or an adjustment layer.
  6. Open the effect’s About dialog and confirm version 1.0.0.

The installer targets an existing AE installation on C:. It does not scan other drives, close applications, download files or alter Adobe preferences. It installs the plug-in, this HTML manual and an uninstaller. For a custom C: AE location, edit the destination while retaining Support Files\Plug-ins\VintageDither.

Manual installation

If you prefer manual installation, copy Plugin/VintageDither.aex from the download into the VintageDither folder under your AE plug-ins folder while AE is closed. The installer and manual file contain the same plug-in binary.

Keep only one VintageDither.aex in AE’s plug-in search paths. Copies installed previously in another location are not automatically searched for or removed. Keep any manual backups outside the plug-in search paths.

Updating and uninstalling

Close AE before updating. The installer asks before replacing an existing plug-in in its selected folder. It keeps one previous copy as VintageDither.previous, which is not an .aex plug-in. A subsequent update replaces that one backup.

Run Uninstall.exe from the installed VintageDither folder while AE is closed. It removes the installed plug-in, HTML manual and uninstaller. A previous-version backup is retained. If you installed manually, remove the copied .aex while AE is closed. Your AE projects and saved Animation Presets are not removed.

Features at a glance

  • 14 complete presets and 26 retro-inspired looks.
  • Colour reduction with 16 bundled palettes and editable 2–256-colour Custom palettes.
  • Explicit Scene Adaptive capture, including adjustment-layer input.
  • Palette Remap for replacing colours while preserving the matching reference.
  • Ordered, procedural and texture patterns, plus seven error-diffusion algorithms.
  • Independent pixelation, pattern scale, strength and blending controls.
  • An Extra colour layer with independent noise animation, strength and bias.
  • Contrast, exposure, gamma and colour-range grading.
  • CRT scanlines/phosphor structure, RGB offset, blur, Halation and Diffusion controls.
  • Chromatic Aberration, pre-dither Vignette and Stop Motion.
  • Save and share settings through AE Animation Presets.
  • Optional experimental GPU palette matching with automatic CPU fallback.

Scene Adaptive captures colours when you click Capture or apply a capture-based look; its palette stays fixed until you capture again. CRT Halation and Diffusion modify structure reconstruction rather than adding standalone glow passes.

Quick start

  1. Apply VintageDither to a layer.
  2. Choose Main Dithering → Palette → Palette Preset.
  3. Start with Color Mapping: Nearest RGB.
  4. Choose a Pattern and adjust Dither Strength.
  5. Increase Pixelation Size for larger image blocks.
  6. Adjust Dither Cell Size and Pattern Scale to size the dither pattern.
  7. Add Extra Layer, Vignette or Finishing as needed.

You can also start with a complete preset or a Retro Look. Select an entry and click its Apply button. Selecting a menu entry alone does not overwrite your settings.

Presets — Complete Looks

The preset group at the top of the effect provides complete combinations of image settings. Choose an entry and click Apply Complete Preset, then adjust the result.

A complete preset sets pixelation, palette, dithering, Extra Layer, Grading, Vignette and Finishing. Existing keyframes are not removed; later keyframes can still change the appearance. Your Renderer preference is preserved.

Preset_001–Preset_008: capture colors when applying

These eight presets combine a saved visual style with colors sampled from the image entering the effect when you click Apply. On an adjustment layer, that is the image received from the layers underneath.

The captured palette stays fixed when the image or time changes. Click Apply again, or use Capture Current Frame, to sample new colors.

Preset_001 and Preset_006 capture 32 colors. The other six capture 16 colors. Set Scene Adaptive → Input RGB Encoding before applying; this setting is preserved. A successful capture selects Custom and updates Capture Colors to the preset’s color count. If capture fails or is cancelled, the previous settings remain.

The other six complete presets use fixed palettes and do not capture new colors when applied. A saved After Effects .ffx preset restores its saved palette; it does not automatically capture colors.

Saving your own settings

Select the entire VintageDither effect and choose Animation → Save Animation Preset to save an After Effects .ffx file. Selecting the entire effect includes the internal color data used by the palette and its matching reference.

Retro Looks — Inspired

Retro Looks change a limited set of controls:

  • Palette and palette matching reference.
  • Color Mapping and Replace Scene Colors.
  • Pattern and Dither Strength.
  • Pixelation, only when Apply Suggested Pixelation is enabled.

Grading, Mix and Finishing are preserved.

Select a look and click Apply Retro Look. The list includes fixed-palette looks and entries marked Scene Adaptive, which capture input colors when applied.

Pixelation

ControlPurpose
Pixelation SizeSets the size of image sampling blocks. 1 gives the smallest size.
Snap to Whole PixelsSnaps the pixelation size to whole pixels.

Pixelation Size controls image sampling. Dither Cell Size controls the dither field, allowing small image pixels with a larger dither pattern.

Vignette (Before Dithering)

Vignette processes the image before Main Dithering. Its transition is therefore processed by the same palette and dithering as the rest of the image.

ControlPurpose
Enable VignetteEnables the vignette.
ColorSets the color blended towards the edges.
RadiusSets where the transition begins.
SoftnessSets the transition width.
StrengthBlends in the vignette, from 0 to 1.

Vignette preserves alpha and does not create an opaque background.

Main Dithering

Palette

Palette Preset selects a bundled palette or Custom. Click a swatch in the palette grid to edit its color. Editing a bundled palette switches it to Custom.

Custom Color Count supports 2–256 colors. All swatches appear in one compact grid without palette pages.

Bundled Palette Encoding determines how bundled numeric RGB values are interpreted. Choose sRGB display values for display-encoded values or Linear sRGB values for linear values. This control does not replace project color management.

Scene Adaptive — Capture

Scene Adaptive builds a palette from the image entering VintageDither. Earlier effects on the layer are included; VintageDither’s own processing is excluded. On an adjustment layer, capture uses the image received from the layers underneath.

  1. Open Main Dithering → Palette → Scene Adaptive — Capture.
  2. Choose Capture Colors: 8, 16, 24, 25, 32, 48, 64, 128 or 256.
  3. Set Input RGB Encoding to sRGB / display RGB or Linear RGB.
  4. Move the time indicator to the frame you want to sample.
  5. Click Capture Current Frame.

The result is an editable Custom palette. Capture selects Nearest RGB, enables Replace Scene Colors and updates the palette matching reference.

The palette is a snapshot. It does not update during playback. Capture again to obtain colors from another frame.

Choose Input RGB Encoding to match the input image. A 32-bit project is not necessarily linear. Capture does not perform automatic ICC or OCIO gamut conversion. Values outside 0–1 are clamped during palette collection. Saved Custom colors use 8-bit RGB values, including in higher-depth projects. Fully transparent pixels do not contribute. Swatches may repeat if there are fewer distinct input colors than requested. Failed or cancelled capture keeps the previous settings.

Color Mapping

MethodPurpose
Tone RampMaps image tones along the palette. Palette order matters.
Nearest RGBMatches input RGB values to the closest palette colors.
Palette RemapMatches against a saved reference palette and outputs your edited colors.

Replacing colors while keeping image regions

With Nearest RGB, changing a palette color also changes which color is closest to each image point. Replacing yellow with blue can therefore change several regions.

Use Palette Remap to keep the matching reference while editing output colors:

  1. Choose your starting palette.
  2. Click Palette Remap Reference → Use Current Palette.
  3. Select Color Mapping: Palette Remap.
  4. Edit the swatches to choose the output colors.

Matching uses the saved reference; the image displays the edited colors. Save a new reference when you want to change the basis for matching.

Replace Scene Colors and Mix

Replace Scene Colors controls whether palette processing replaces image colors. Mix blends Main Dithering with its input: 0 retains the input and 1 applies the full main treatment. Extra Layer and Finishing have separate controls. Mix is not a bypass for the entire effect.

Pattern

The menu includes ordered, procedural, noise and texture patterns, plus error diffusion methods.

ControlPurpose
Dither Cell SizeSets the dither field’s cell size.
Pattern ScaleScales the selected pattern.
PatternSelects a dithering method or threshold pattern.
Dither StrengthSets dithering strength. For error diffusion, controls how much error is propagated.
Blend WidthAdjusts the main threshold transition. Unused by error diffusion.
Noise SeedChanges the noise distribution; does not animate it by itself.
Animate NoiseEnables time variation for supported noise patterns.
Noise Frame RateSets the noise update rate, from 1 to 60 FPS.

Error diffusion

The following methods are included:

  • Floyd–Steinberg.
  • Jarvis–Judice–Ninke.
  • Stucki.
  • Atkinson.
  • Burkes.
  • Sierra, three rows.
  • Stevenson–Arce.

Error diffusion distributes quantization error to subsequent image points. For a conventional result, start with Dither Cell Size 1, Pattern Scale 1 and Dither Strength 1. Strength 0 leaves palette quantization without error propagation.

Blend Width, Noise Seed and Animate Noise do not alter the diffusion algorithm. These methods run on CPU and can take longer with large images and palettes.

Animated noise

Animate Noise supports procedural White Noise and Random, and the Blue Noise and White Noise texture families. Ordered patterns and error diffusion do not support this noise animation.

Animate Noise and Noise Frame Rate are disabled when the selected pattern does not support animation. Their saved values are retained. Noise is held between updates at the chosen Noise Frame Rate.

Grading

ControlPurpose
ContrastAdjusts contrast before color mapping.
Exposure (stops)Adjusts exposure in stops.
GammaAdjusts midtone distribution.
Range OffsetShifts the color range before mapping.

Extra Layer

Extra Layer adds a separate color treatment with its own threshold pattern and color. It can introduce colors outside the main palette.

ControlPurpose
Enable Extra LayerEnables the extra layer.
PatternSelects its pattern.
Scale (pixels)Sets pattern size.
StrengthBlends the extra color: 0 has no effect; 1 gives full strength in affected regions.
BiasShifts which regions are affected.
ColorSets the layer’s color.
Animate NoiseEnables animation for supported noise patterns.
Noise Frame RateSets this layer’s noise update rate.
Noise SeedSelects a noise distribution independently of Main Dithering.

The threshold mask uses graded, inverted image luminance together with Bias. Extra Layer adds a color treatment rather than a second full palette quantization. It can remain active when the main Mix is 0.

Animation supports the same noise families as Main Dithering. Main and Extra Layer can use different Noise Frame Rate and Noise Seed settings.

Finishing

Chromatic Aberration

ControlPurpose
Enable Chromatic AberrationEnables the treatment.
StrengthSets its strength.
Separation (pixels)Sets color-channel separation.
Start OffsetSets how far from the image center separation begins.

Chromatic Aberration offsets color channels radially and preserves alpha.

CRT

CRT combines scanlines, phosphor structure, reconstruction of neighboring image points, optional RGB offset and blur.

ControlPurpose
Enable CRTEnables CRT processing.
Enable Scanlines & PhosphorEnables the structure; also required for Halation and Diffusion.
CRT StrengthSets overall CRT strength.
Scanline SpacingSets the distance between scanlines.
Scanline UnitsSelects pixels or multiples of pixelation size.
Scanline ThicknessSets the width of the bright portion.
Scanline SoftnessSoftens structure transitions.
Scanline Gap DarknessSets darkness between scanlines.
Scanline StrengthSets scanline intensity.
Phosphor SpacingSets phosphor structure spacing.
Phosphor UnitsSelects pixels or multiples of pixelation size.
Phosphor ThicknessSets the bright structure width.
Phosphor SoftnessSoftens phosphor transitions.
Phosphor Gap DarknessSets darkness in structure gaps.
Phosphor StrengthSets phosphor structure intensity.
Phosphor StyleSelects Aperture Grille, Shadow Mask or Slot Mask.
Quantize to Pixel GridSnaps structure and reconstruction radius to the pixel grid.
Brightness CompensationCompensates for the structure’s reduced average brightness.
Enable RGB OffsetEnables a separate horizontal RGB offset.
RGB Offset (pixels)Sets the RGB offset distance.
Enable BlurEnables separate smoothing.
Blur Radius (pixels)Sets the smoothing radius.
HalationExpands the CRT structure’s neighborhood reconstruction radius.
DiffusionExpands the same radius with a larger weighting.

Phosphor structure and RGB Offset

The phosphor mask affects all RGB channels equally. It does not split the image into separate red, green and blue phosphor stripes. RGB Offset is a separate treatment that can be switched off independently.

Halation and Diffusion

These controls affect which neighboring bright and dark points the CRT structure can select. Both default to 0. They operate through a shared reconstruction radius, rather than separate glow or blur passes.

Enable both CRT and Scanlines & Phosphor, then try a high-contrast image. Phosphor Spacing also affects the reconstruction radius. With Quantize to Pixel Grid enabled, nearby values can produce the same radius and appearance. Halation and Diffusion can produce similar looks because they change the same radius.

CRT Diffusion is separate from the error diffusion algorithms in the Pattern menu.

Stop Motion

Enable Stop Motion holds input frames at the selected Frames Per Second, from 1 to 60 FPS. Internal animated controls and noise phases are also sampled at the held time. Main and Extra Layer follow the same held image time.

Rendering

Renderer selects CPU or GPU (Experimental, CPU fallback). CPU is the default.

GPU mode accelerates nearest-palette-color searching for Nearest RGB and Palette Remap. Pixelation, Grading, patterns, Extra Layer and color composition continue to use CPU alongside this GPU stage. Finishing and Scene Adaptive use CPU. Tone Ramp and error diffusion use CPU even when GPU mode is selected.

If the GPU is unavailable, unsupported or fails, rendering automatically falls back to CPU. After a GPU failure, CPU remains in use for the session; restart After Effects to retry. Cancelling a render still cancels it. Presets preserve Renderer.

Checking GPU activity

Right-click the VintageDither effect header in Effect Controls and choose its About command. The dialog shows GPU frames, CPU fallbacks and the initialized GPU. These are processing-pass counters for the session, not a frame-rate measurement. After Effects may request several passes for one composition frame.

This implementation uses an internal GPU stage and does not display After Effects’ native GPU effect badge. Select CPU in VintageDither to force its CPU path. The project’s Mercury setting does not select this internal experimental mode.

Large palettes can benefit more from GPU matching. Transfer and CPU preparation overhead may limit the benefit for small images or palettes. GPU behavior has been tested in After Effects on an NVIDIA GeForce RTX 4080; results on other devices can differ. Multi-Frame Rendering remains disabled.

Preview resolution and image quality

Full, Half and Quarter deliver different amounts of image information to the effect. Patterns use full-resolution coordinates, while reduced previews combine coverage over larger image areas. Small patterns may therefore appear softer or less distinct at Half or Quarter. Judge final detail at Full resolution.

A reduced preview cannot recover image detail that After Effects does not supply.

Troubleshooting

A swatch changes, but the image changes unexpectedly

Check Color Mapping. Nearest RGB recalculates the closest palette colors after an edit. Use Palette Remap with a saved reference to retain matching regions while replacing colors. Grading, Extra Layer and Finishing can also affect the result.

Animate Noise is disabled

Choose procedural White Noise/Random or a Blue Noise/White Noise texture. The selected pattern must support noise animation.

Scene Adaptive does not update when I move the time indicator

Capture saves a fixed palette. Use Capture Current Frame again, or reapply a capture-based preset or Scene Adaptive Retro Look, to sample new colors.

Scene Adaptive cannot capture colors

Check that a visible image enters the effect at the current time. Fully transparent input provides no colors. Failed or cancelled capture keeps the previous settings. When contacting support, include the plug-in version and whether you are using an image layer or an adjustment layer.

Halation or Diffusion seems to have no effect

Enable both CRT and Scanlines & Phosphor. Use visible structure strength and an image containing bright and dark detail. Quantization changes the radius in steps; try larger value changes or disable Quantize to Pixel Grid for comparison.

After Effects warns about Multi-Frame Rendering

This build does not declare Multi-Frame Rendering support. The warning describes that limitation and does not by itself indicate incorrect image processing.

Support

Contact [email protected]. Include the VintageDither version, After Effects version, project color depth, RGB encoding, preview resolution and settings that trigger the issue. Screenshots of the controls and result help.

© 2026 Urdrift · Work in progress