Skip to the guide
Pixx Suite

Enhance · Pixel-perfect image scaling & resizing · Advanced

Pixxoni — Advanced

How Pixxoni's pipeline, upscalers and grid detection really work, the recipe fields, size limits, batch production and pixel-perfect checks.

Open Pixxoni

#What you'll learn

  • The exact order Pixxoni processes an image in, so you can predict every result.
  • How each upscaler chains with nearest neighbour, and how sizes are rounded and capped.
  • How Detect pixel grid finds a grid, its limits, and how it handles non-square pixels.
  • What a recipe contains, what travels with a sent asset, and what a cloud project stores.
  • How to run consistent batches and verify them.

#Before you start

  • Read the Pixxoni Intermediate guide first: exact sizes, fit modes, the canvas and recipes.
  • A known-good test sprite (with diagonals and transparency) makes it easy to compare algorithms.

#How-tos

#How to predict a result: the pipeline

Every image, frame and sheet cell goes through the same steps:

  1. Clean up transparency: fully transparent pixels are all treated as the same "clear" colour, so upscalers don't see hidden colour differences.
  2. Detect the grid (only with Detect pixel grid): the image is rebuilt at its real 1× size first.
  3. Work out the target size from the factor or the exact size, the pixel shape and the fit mode (see below).
  4. Resample with the chosen algorithm to exactly that size.
  5. Place on the canvas if a canvas or a Fill + crop / Fit + pad box applies, using the anchor and edge colour.

#How to control size, rounding and the cap

  1. By factor: the result is width × factor × pixel shape by height × factor. Any factor from 0.05 to 64 can be typed; the chips offer 0.5× to 8×.
  2. Exact size with Keep the shape on scales by the smaller ratio (Fit) or the larger one (Fill + crop), so the art keeps its shape.
  3. Sizes are rounded to whole pixels, and are never less than 1.
  4. If either side would pass 8192 pixels, the whole result is scaled down to fit and you get a "Capped at 8192 px per side" warning.
  5. A canvas is also capped at 8192 per side.

#How to chain upscalers on purpose

  1. Each pixel-art upscaler has a native size: Scale2x (EPX) and Eagle 2×, Scale3x 3×, Scale4x 4× (Scale2x twice).
  2. Smooth (xBR-lite) runs once for 2×, or twice when you need more than about 2.5×.
  3. Pixxoni runs the upscaler at its native size, then uses nearest neighbour to reach your exact target. So Scale2x at 8× is "rounded at 2×, then blocked up 4×".
  4. Upscalers only run when both sides get bigger. Shrinking always uses nearest, except Mode (majority).
  5. To get rounder results at large sizes, run the job twice: Scale2x at 2×, Send to App → back into Pixxoni (or export and reopen), then Scale2x again.

#How to get the most from grid detection

  1. Pixxoni measures where colours change along every row and column, then looks for the cell size (2 to 64 pixels) and offset whose lines catch the most change.
  2. Width and height are checked separately, so stretched pixels (for example 2 wide by 1 tall) are found too.
  3. Each cell is rebuilt from the per-channel median of its inner pixels, which makes clean art exact and removes JPEG noise.
  4. For an animation or a sprite sheet, the grid found on the first frame is used for every frame, so they all line up.
  5. It can't help when the image was resized by a non-whole factor, rotated, or mixes art at different scales (for example a pixel sprite on a smooth UI). Crop to one piece of art first.

#How to verify a batch is pixel-perfect

  1. Set up and save a recipe.
  2. Click Batch in the top bar and pick the files (or drop several at once).
  3. Each tile in Batch scale shows the new size and either crisp or how many colours were added.
  4. Anything other than crisp (with a non-smooth algorithm) points to a source with half-transparent pixels or earlier blurring.
  5. Download ZIP saves the whole set.

#How to read a recipe

A recipe is a small set of fields (saved recipes live on this device; sent assets carry the recipe in meta.recipe):

FieldMeaning
algonearest, scale2x, scale3x, scale4x, eagle, xbr, mode or grid
byfactor or size
factorthe scale factor
width, heightthe exact size (0 = not set)
lock, fitkeep the shape; fit, fill or fit-pad
pixelAspect1:1, 2:1, 1:2, 4:3, 3:4 or 8:7
canvas, canvasW, canvasHthe canvas on/off and its size
anchortl, t, tr, l, c, r, bl, b, br
padtransparent or a colour

A Pixxoni cloud project is a zip with recipe.json and the source (source.png, or frames/0000.png… for animations), so it always re-renders from the original.

#Workflows

#One master sprite, every output size

  1. Keep the 1× sprite as the master. Never upscale an upscale with nearest neighbour.
  2. Save one recipe per output: store icon, screenshot size, trailer size.
  3. Run each recipe on the master and Export. Re-run them all whenever the master changes.

#Restoring and modernising old art

  1. Detect pixel grid at 1× to recover the original from a screenshot.
  2. Send to App → Pixxivi to fix any damage by hand.
  3. Back in Pixxoni, apply Scale3x or Smooth (xBR-lite) for a remastered look, and compare with Split.

#A pipeline step for every sprite in a game

  1. In Flow, add a Pixxoni step after Pixxula or Pixxani.
  2. Open each step in Pixxoni, apply the team's saved recipe, and Send result to Flow.
  3. Sprite sheets keep their columns, and each cell is scaled on its own, so the engine import settings don't change except for the cell size.

#Tips and shortcuts

  • 0 fit · 1 real size · + / - zoom · Space play/pause · Ctrl+O open · Ctrl+S export · Ctrl+V paste.
  • Sources keep their kind when sent on: an image stays an image, frames stay frames, a sheet stays a sheet.
  • Your last still image (up to 1024×1024) and recipe are restored on this device when you come back.
  • On phones Pixxoni starts in Split view; Side by side is easier on wide screens.

#Troubleshooting

  • A "Capped at 8192 px" warning: lower the factor or the exact size; the result was shrunk to fit.
  • A sheet's cells come out uneven: use a whole-number factor so every cell scales to the same whole size.
  • Grid detection finds 1× on clearly upscaled art: the art may sit on a smooth background or have been resized by a fraction. Crop to the sprite, or start from a cleaner source.
  • Smooth (xBR-lite) adds lots of colours: that's expected; it blends corners. Use Scale2x or Scale3x to keep the palette.
  • Mode (majority) does nothing when enlarging: it only shrinks. When enlarging, nearest neighbour is used.