Retro Console - Texture Converter

Prince Eagle in Materials and Shading


Retro Console User Guide

Retro Console turns the image textures on your materials into retro console and computer styles. It shrinks them, reduces the colors, dithers them and sets pixel-perfect filtering, all without touching your original images.

Version 2.0.0, for Blender 5.2 and newer

- [Installation](installation)
- [Quick start](quick-start)
- [How it works](how-it-works)
- [The panel, section by section](the-panel-section-by-section)
- [Preset reference](preset-reference)
- [Palettes](palettes)
- [Dithering guide](dithering-guide)
- [Recipes](recipes)
- [Image Editor workflow](image-editor-workflow)
- [Saving your own presets](saving-your-own-presets)
- [Rendering at console resolution](rendering-at-console-resolution)
- [Exporting for game engines](exporting-for-game-engines)
- [Performance](performance)
- [Troubleshooting](troubleshooting)
- [FAQ](faq)

---

Installation

1. Download `retro_console-v2.0.0.zip`. Don't unzip it.
2. In Blender go to Edit > Preferences > Get Extensions.
3. Click the ⌄ dropdown at the top right and choose Install from Disk...
4. Select the zip. Retro Console is enabled right away.

You can also drag and drop the zip onto the Blender window.

Upgrading from Retro Console Lite 1.x: uninstall the old add-on first (Preferences > Add-ons > Retro Console Lite > Uninstall). It has a different ID, so Blender would otherwise keep both.

---

Quick start

1. Select one or more objects whose materials use Image Texture nodes.
2. Press N in the 3D Viewport and open the Retro Console tab.
3. Pick a preset from the dropdown, for example 32-Bit Disc Console.
4. Press Convert.

Done. To compare, press Compare. To undo, press Restore or Ctrl+Z.

Even faster: right-click in the viewport and choose Retro Console, then click any preset. That converts the selected objects immediately.

---

How it works

For every Image Texture node on the target materials, Retro Console:

1. Finds the source image. If the node already shows a Retro Console result, it goes back to the original, so re-converting never degrades quality.
2. Skips data maps. Images set to Non-Color (normal, roughness, metallic, height…) are left alone by default.
3. Resizes the image to the target resolution.
4. Adjusts brightness, contrast, saturation and gamma.
5. Reduces colors to a bit depth, a palette, or an adaptive palette, with optional dithering.
6. Handles transparency (keep, cutout or opaque).
7. Writes a new image called `<original name>_retro`, packs it into the .blend and points the node at it. The node's filtering is set to Closest (or Linear for the 64-bit cartridge look).

The original image is never modified or copied. The retro image just remembers which image it came from. Each image is processed once per run, even when many materials share it.

---

The panel, section by section

The same panel is in the 3D Viewport sidebar and the Image Editor sidebar, both under the Retro Console tab.

Header

| Control | What it does |
|---|---|
| Preset dropdown | Loads a machine's settings into every section below. After that you can change anything. |
| Preset menu button (next to the dropdown) | Save, load and delete your own presets. |
| Summary line | A short reminder of the current settings, e.g. 128px, 32 levels/channel, dithered. |
| Apply To | Selected: materials on all selected objects. Active: only the active material of the active object. Scene: materials on every object in the scene. |
| Convert | Runs the conversion. |
| Compare | Flips every converted texture between the original and the retro version, so you can check the difference. |
| Restore | Puts the original images back, restores each node's original filtering and deletes retro images nothing uses any more. |
| Live Update | When on, changing any setting re-converts the targets automatically a moment later. Great for dialing in a look. Turn it off for very large scenes. |

Resolution

| Control | What it does |
|---|---|
| Sharp / Smooth / Keep Size | Sharp picks the nearest pixel: crunchy and aliased, very "retro". Smooth averages each block of pixels: cleaner, keeps thin details as blended color. Keep Size only reduces colors. |
| Resolution + 32 / 64 / 128 / 256 | Target size in pixels. With Keep Aspect Ratio this is the longest side. |
| Keep Aspect Ratio | A 1024×512 texture at 64 becomes 64×32 instead of being squashed to 64×64. |
| Pixelated / Bilinear | The filtering set on the Image Texture node. Pixelated (Closest) gives hard pixels. Bilinear (Linear) gives the soft, blurry look of late-90s 3D consoles. |

Colors

| Mode | Use it for |
|---|---|
| Bit Depth | Hardware that stored a fixed number of bits per channel. Levels are R, G, B levels: 32 = 5 bits (15-bit color), 8 = 3 bits, 4 = 2 bits. Channels can differ, e.g. 8/8/4 for classic 3-3-2 color. |
| Palette | Machines with a fixed color set. Every pixel is matched to the nearest palette color. See [Palettes](palettes). |
| Adaptive | Machines that could pick any N colors from a larger space. Retro Console finds the best N colors for each texture with k-means in the Oklab color space. Snap to Bit Depth rounds those colors to the hardware's grid (set by Levels). |

Match (Palette mode only):
- Perceptual picks the color that looks closest to the eye. Use it for color palettes.
- Brightness maps dark to dark and light to light, with the palette's range stretched to full black to white. Use it for monochrome palettes like 4 greens or 4 reds.

Dithering

Pick a pattern and a Strength (0–2). See the [Dithering guide](dithering-guide).

Adjustments

Brightness, Contrast, Saturation and Gamma are applied before the colors are reduced, so they change which colors get picked. Boosting contrast and saturation often makes low-color results punchier. Reset Adjustments sets them back to neutral.

Transparency

| Mode | Result |
|---|---|
| Keep | Alpha is unchanged. |
| Cutout | Alpha becomes 0 or 1 using Threshold. This is the classic 1-bit transparency of sprites and foliage cards. |
| Opaque | Alpha is removed. |

Options & Output

| Option | Default | What it does |
|---|---|---|
| Skip Data Maps | On | Leaves Non-Color images untouched. Turn it off only if you really want normal or roughness maps quantized. |
| Look Inside Node Groups | On | Also converts Image Texture nodes inside node groups. |
| Matte Shading | Off | Sets every unlinked Principled BSDF input to Roughness 1, Metallic 0, Specular IOR Level 0, Coat 0, Sheen 0, for flat, early-3D-style shading. Not undone by Restore. Use Ctrl+Z. |
| Pack Into .blend | On | Packs retro images so they're saved inside the .blend. If you turn it off, export them before closing Blender or they'll be lost. |
| Match Console Screen | – | See [Rendering at console resolution](rendering-at-console-resolution). |
| Export Retro Textures | – | See [Exporting for game engines](exporting-for-game-engines). |
| Delete Unused Retro Images | – | Removes `_retro` images that no material uses. |

---

Preset reference

| Preset | Inspired by | Texture | Colors | Dithering | Native screen | Extras |
|---|---|---|---|---|---|---|
| Pocket Green | Late-80s handheld | 64 px | 4-color palette (by brightness) | Ordered 4x4 (0.60) | 160×144 | contrast 1.1 |
| Pocket Grey | Slimmer 90s handheld | 64 px | 4-color palette (by brightness) | Ordered 4x4 (0.60) | 160×144 | – |
| Pocket Color | Late-90s color handheld | 64 px | 4 levels/channel | Floyd-Steinberg | 160×144 | saturation 1.3, contrast 1.4 |
| Pocket Wide | 2000s widescreen handheld | 128 px | 32 levels/channel | None | 240×160 | saturation 1.15, contrast 1.05 |
| Red Visor | Mid-90s tabletop 3D visor | 64 px | 4-color palette (by brightness) | Ordered 4x4 (0.50) | 384×224 | – |
| 8-Bit Home Console | Mid-80s cartridge console | 64 px | 55-color palette | Ordered 4x4 (0.35) | 256×240 | – |
| 16-Bit Home Console | Early-90s cartridge console | 128 px | 256 adaptive, snapped to 32 levels | None | 256×224 | – |
| 8-Bit Rival Console | Late-80s cartridge console | 64 px | 4 levels/channel | Ordered 2x2 (0.50) | 256×192 | – |
| 16-Bit Rival Console | Early-90s cartridge console | 64 px | 16 adaptive, snapped to 8 levels | Ordered 2x2 (0.40) | 320×224 | – |
| 32-Bit Disc Console | Mid-90s CD console | 128 px | 32 levels/channel | Ordered 4x4 | 320×240 | – |
| 64-Bit Cartridge Console | Late-90s 3D console | 32 px | 32 levels/channel | None | 320×240 | smooth downscale, bilinear filtering, saturation 1.1 |
| 32-Bit Twin-CPU Console | Mid-90s CD console | 64 px | 32 levels/channel | None | 320×224 | smooth downscale |
| Fantasy Console | Modern 16-color fantasy console | 32 px | 16-color palette | None | 128×128 | smooth downscale, saturation 1.2 |
| 8-Bit Home Computer | 80s bread-bin computer | 64 px | 16-color palette | Ordered 4x4 (0.50) | 320×200 | – |
| Rubber-Key Micro | Early-80s British micro | 64 px | 15-color palette | Ordered 4x4 (0.60) | 256×192 | – |
| Standard Micro | 80s Japanese standard computer | 64 px | 15-color palette | Ordered 4x4 (0.50) | 256×192 | – |
| PC 4-Color | Early-80s PC graphics | 64 px | 4-color palette | Ordered 4x4 (0.80) | 320×200 | – |
| PC 16-Color | Mid-80s PC graphics | 64 px | 16-color palette | Ordered 4x4 (0.50) | 320×200 | – |
| PC 256-Color | Late-80s PC graphics | 128 px | 256 adaptive, snapped to 64 levels | None | 320×200 | – |
| 16-Bit Home Computer | Late-80s multimedia computer | 128 px | 32 adaptive, snapped to 16 levels | Floyd-Steinberg (0.60) | 320×256 | – |
| 1-Bit Desktop | Mid-80s compact desktop | 128 px | 2-color palette (by brightness) | Atkinson | 512×342 | – |

Custom keeps whatever settings you have. Retro Console switches to it automatically when you add, remove or import palette colors, or load a user preset.

Pocket Color reproduces the look of Retro Console Lite 1.x.

---

Palettes

When Colors is set to Palette, the list shows every color. Click a swatch to pick a new color, or type a hex code next to it.

| Button | Action |
|---|---|
| + / − | Add a color (a copy of the selected one) or remove the selected one. |
| Sort | Order colors from dark to light. |
| From Image | Builds a palette from any image's most important colors. Choose the image and the number of colors. Handy for matching a texture set to concept art. |
| Load File | Imports a palette file: Lospec `.hex` (one hex code per line), GIMP `.gpl`, or Paint.NET `.txt`. |

Lospec (lospec.com/palette-list) has thousands of free palettes. Download one as .hex and load it.

Palettes are limited to 256 colors. Colors are in sRGB, exactly as in other paint apps.

---

Dithering guide

Dithering mixes neighboring pixels of the available colors to fake the colors in between.

| Pattern | Look | Best for |
|---|---|---|
| None | Flat bands of color | Clean pixel art, the 64-bit cartridge look, adaptive palettes with many colors |
| Ordered 2x2 | Coarse checkerboard | 8/16-bit consoles, very small textures |
| Ordered 4x4 | The classic crosshatch | The 32-bit disc console look, 8-bit computers, gradients on skies and floors |
| Ordered 8x8 | Finer regular pattern | Larger textures, smoother ramps |
| Floyd-Steinberg | Organic, noisy | Photos, few levels per channel |
| Atkinson | High contrast, keeps highlights clean | 1-bit and 2–4 color palettes |
| Sierra Lite | Lighter, quicker error diffusion | A softer Floyd-Steinberg |
| Jarvis-Judice-Ninke | Very smooth, wide spread | Large textures with subtle gradients |

Strength scales the effect. 0.3–0.6 gives a subtle texture, 1.0 is the textbook amount, and up to 2.0 is exaggerated.

Ordered dithering is stable: the pattern doesn't change between textures or frames. That makes it the better choice for animation and tiling textures. Error diffusion can make seams visible on tiling textures.

---

Recipes

Crunchy 32-bit disc look: preset 32-Bit Disc Console. Turn on Matte Shading, then Match Console Screen. For wobbly geometry, add a vertex-snapping setup separately; Retro Console only handles textures.

Soft 64-bit cartridge look: preset 64-Bit Cartridge Console. It's already 32 px, Smooth and Bilinear. Try 64 px for hero props.

Monochrome handheld: preset Pocket Green. If faces turn to mush, raise Contrast to 1.3–1.5 or switch dithering to Atkinson.

Your own 8-color look: set Colors to Adaptive with 8 colors, then use Ordered 4x4 at 0.5.

Match concept art: Palette mode > From Image > pick the concept image, 16 colors. Convert the whole scene with Apply To: Scene.

Foliage and fences: Transparency > Cutout, Threshold 0.5. In EEVEE, set Material Properties > Settings > Render Method to Dithered.

Pixel-art upscale for UI: Image Editor > Keep Size, Palette mode with your palette, Dithering: None.

---

Image Editor workflow

The Image Editor sidebar has its own Retro Console tab with the same settings:

- Convert Image converts the image currently shown and displays the result.
- Compare flips between that image and its retro version.
- Make Palette builds a palette from the image shown.

With Live Update on and an Image Editor showing a retro image, settings changes update that image (and every material using it) as you drag.

---

Saving your own presets

Click the preset menu button next to the preset dropdown:
- Save Current Settings... asks for a name and stores every setting, including the palette.
- Click a saved name to load it, or the × next to it to delete it.

Presets are JSON files in Blender's extension user folder (`.../extensions/.user/user_default/retro_console/presets/`). Copy them to share with others or move them between computers.

---

Rendering at console resolution

Options & Output > Match Console Screen sets:
- the render resolution to the preset's native screen size (for example 320×240), times Scale (1–16, set in the operator's redo panel)
- the resolution percentage to 100 %
- the pixel filter size to 0, so pixels stay hard
- the view transform to Standard, so colors stay as picked instead of being tone-mapped
- Workbench render anti-aliasing to off

Render at Scale 1 for authenticity, then scale up the final image with nearest-neighbor in your video editor. Or render at Scale 3–4 directly.

---

Exporting for game engines

Export Retro Textures saves every `_retro` image in the file as a PNG in a folder you choose. The images in Blender keep working; Retro Console saves copies.

In your engine, set texture filtering to Point / Nearest (or bilinear for the 64-bit cartridge look) and turn off mipmaps or compression, which would blur or shift the colors.

---

Performance

- Most presets convert a texture in 2–10 ms after it's loaded.
- Adaptive presets (16-bit Home Console, PC 256-Color, 16-Bit Home Computer) take 80–180 ms per texture because they build a palette.
- Error diffusion (Floyd-Steinberg, Atkinson, Sierra Lite, JJN) runs pixel by pixel. At 512 px it takes around 0.5 s per texture. Ordered dithering is always fast.
- The first time a very large texture (4K+) is read, Blender has to load and decode it. That usually takes longer than Retro Console itself.

Tips for big scenes:
- Turn off Live Update while working with dozens of materials.
- Use Apply To: Active to try a look on one material first.

---

Troubleshooting

"No image textures found"
- The materials need Image Texture nodes with an image loaded. Procedural textures aren't converted. Bake them to an image first.
- All the images might be Non-Color. Turn off Skip Data Maps if you want them converted.

"Could not read: …"
- The image file is missing or can't be loaded. Check File > External Data > Report Missing Files.

"The palette is empty"
- You're in Palette mode with no colors. Pick a preset, use From Image, or Load File.

Textures still look smooth
- The Image Texture node's filtering should be Closest. Retro Console sets it, but another add-on or a driver might change it.
- In EEVEE, check Render Properties > Film > Filter Size, or use Match Console Screen.

Colors look washed out compared with the palette
- Use the Standard view transform (Match Console Screen sets it). AgX and Filmic tone-map the colors.

Converted textures disappeared after reopening the file
- Pack Into .blend was off. Turn it on (default), or export the textures to disk.

I want my old textures back
- Press Restore. Originals are never deleted, so even if a node lost its image you can pick the original again in the Image Texture node's image menu.

---

FAQ

Does it change my original images?
No. Originals are never modified or copied. Results go into new `_retro` images.

Does it work in Cycles and EEVEE?
Yes, in both. Retro Console only changes textures and texture-node filtering.

Can I use it for commercial work?
Yes. Retro Console is GPL-3.0-or-later. The textures you make with it are yours.

Why are the presets not named after real consoles?
The names describe the kind of machine instead of using trademarks. The descriptions and the reference table above make it clear which look each preset aims for.

Does it work on Blender 4.x or 5.0/5.1?
Version 2 needs Blender 5.2+. Retro Console Lite 1.0.1 supports Blender 4.4.3 – 4.5.

Where do I report bugs?
Email [email protected], or message me through the store page.


$20

Have questions about this product?
Login to message

Details
Blender Extension Compatible Yes
Sales 70+
Rating
1 ratings
Published over 1 year ago
Blender Version 5.2
Extension Type Add-on
Render Engine Used Cycles, Eevee
License GPL
Discover more products like this

playstation retro Shader converter Material texture