Skip to content

Palette Remap

Node icon
Color

The variant generator. Remaps a source color to every color in a connected palette, producing one output per slot.

Palette Remap finds the pixels near a Source color and generates one variant per palette slot, with the source hue shifted to that slot’s color. Hue Tolerance sets how wide a hue range counts as the source, and pixels below Min Saturation are never touched. With Preserve Luminance on (the default), highlights and shadows survive the recolor.

An optional mask limits the remap: white areas are recolored and black areas keep their color, so you can recolor a character’s shirt without touching the rest of a multi-colored asset.

The output is a Batch pin carrying every variant. Everything downstream processes all variants at once, and Export Batch writes each as a separate named file.

Feed a batch into the image input and you get every frame combined with every slot (an M×N fan-out) on one Batch output. Each variant’s name joins its parent’s name, so {name} in Export Batch already gives every combination a unique name (such as tree_purple, rock_purple). A single image works the same way: hero.png gives hero_red, hero_teal, and so on.

Pins

ImageImage
InputRequired
PalettePalette
InputRequired
MaskMask
InputOptional
BatchBatch
Output

Color

SourceColor (RGB)
Default: rgb(200, 50, 50)

Source color; each palette slot remaps to its hue

Matching

Hue ToleranceNumber
Default: 30 Range: 1–90

Angular range around the source hue that gets remapped. Wider = more colors affected

Min SaturationNumber
Default: 20 Range: 0–50

Pixels below this saturation are never remapped. Keeps gray, white, chrome, and black areas intact

FeatherNumber
Default: 0.20 Range: 0.00–1.00

Soft falloff at the edge of the hue range. 0 = hard edge, 1 = fully gradual.

Preserve LuminanceToggle
Default: true

Keep the original pixel brightness. Shading and highlights remain visible

Mask

Mask FromChoice
Default: Luminance
Color image connected to the mask input

How the connected color image is read as a mask

  • LuminanceRead the image's brightness as the mask. The default.
  • AlphaRead the image's transparency as the mask.
  • RedUse the red channel as the mask.
  • GreenUse the green channel as the mask.
  • BlueUse the blue channel as the mask.
Mask FitChoice
Default: None (native size)
Mask connected

How the mask is sized when it doesn't match the image

  • None (native size)Center the mask at its native size, with no resizing. Unmasked regions are unaffected.
  • StretchStretch the mask to exactly match the image dimensions. May distort the mask shape.
  • Fit (letterbox)Scale the mask to fit inside the image, preserving aspect ratio. Letterboxes where needed.
  • Fill (crop)Scale the mask to fill the image, preserving aspect ratio. Crops edges if aspect ratios differ.
  • Pick the most prominent, saturated color as the source for best results.
  • Raise Min Saturation to protect neutral and gray areas.
  • Wire a Palette From Image node to extract the palette from a reference image.