Nodes/SDXL Auto Prompter/APNext Color Grading FX
ComfyUI Node

APNext Color Grading FX

Exposure, contrast and LUTs in the graph

By dagthomas·Created 3 years ago·Updated 12 days ago· 283
APNext Color Grading FX
  • images
  • image
methodmanual
lut_strength1.00
exposure0.00
contrast1.00
highlights0.00
shadows0.00
saturation1.00
temperature0.00
tint0.00
lut_fileNone
custom_lut_path

This is a mini color-grading suite you drop at the end of a workflow - the kind of exposure, contrast, and white-balance controls you'd expect in Lightroom, plus the ability to load a professional LUT. If you want every image from a batch to carry the same graded look without touching an external editor, this bakes it in. It's the "make it look intentional" pass.

It's an image effect: IMAGE in, IMAGE out, applied after VAE decode. No model, no API key.

How it works

Two modes. In manual mode you get direct sliders - exposure, contrast, saturation, separate highlight and shadow controls, and temperature/tint for white balance - and the node applies them in sequence to the pixels. In lut_file mode it applies a 3D lookup table, the same kind colorists use to transform an image's entire color response in one move. It supports .cube, .3dl, and image-based LUTs.

The manual controls are the everyday tool. Highlights and shadows let you pull detail back into blown skies or crushed blacks independently, which is the part a flat brightness slider can't do. Temperature warms or cools the whole frame; tint handles the green-magenta axis.

Inputs and outputs that matter

  • images - your decoded image.
  • method - manual for the sliders, lut_file to apply a LUT.
  • exposure (−3 to +3 stops) and contrast - the two biggest levers in manual mode.
  • highlights / shadows (−1 to +1) - recover or deepen the tonal extremes independently.
  • temperature / tint - white balance. Small moves; these are sensitive.
  • saturation - overall color intensity.
  • For LUTs: custom_lut_path (type the path to your .cube file) and lut_strength to blend the LUT in partially.

The single output is image.

Installing it

ComfyUI Manager: search comfyui_dagthomas, install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/dagthomas/comfyui_dagthomas
cd comfyui_dagthomas
pip install -r requirements.txt

The color nodes use color_matcher and Pillow from the requirements. No API key, no model downloads.

Common issues

The LUT dropdown catches people out: lut_file in the schema often shows only "None" because the node found no LUT files in its expected folder. That doesn't mean LUTs are broken - it means you need to point custom_lut_path at an actual .cube file on disk, or drop LUTs where the node looks for them. Start with lut_strength below 1.0; most cinematic LUTs are strong and a 100% application looks like a filter.

In manual mode, temperature and tint are the sliders that wreck an image fastest - a heavy push turns skin orange or green. Nudge them. And grade last: if you're also running bloom, halation, or grain, put this node before those film effects so the grain and glow sit on top of the graded colors, which is the order a real film pipeline uses.

Categorycomfyui_dagthomas/APNext FX Advanced

Inputs (12)

NameTypeDefaultDescription
imagesIMAGE
methodCOMBOmanual2 options: manual, lut_file
lut_strengthFLOAT1.000–2
exposureFLOAT0.00-3–3
contrastFLOAT1.000–3
highlightsFLOAT0.00-1–1
shadowsFLOAT0.00-1–1
saturationFLOAT1.000–3
temperatureFLOAT0.00-1–1
tintFLOAT0.00-1–1
lut_fileoptCOMBONone1 options: None
custom_lut_pathoptSTRING

Outputs (1)

NameTypeDescription
imageIMAGE