Skip to content

Color Correct

Single-pass CDL-style color grading with exposure, gain, lift/gamma/gain, saturation, hue shift, and color temperature.

Category: Color Menu path: Color > ColorCorrect

Ports

PortTypeDirectionDescription
inimageRgba16finputInput image
outimageRgba16foutputColor-corrected result

Parameters

ParamTypeDefaultDescription
exposurescalar0.0Exposure in stops. Each +1 doubles brightness, each -1 halves it. Keyframeable.
gainscalar1.0Linear brightness multiplier applied before CDL. Keyframeable.
liftscalar0.0Shadow lift (ASC CDL). Adds a constant to all values, raising the black point. Keyframeable.
gammaCdlscalar1.0Midtone gamma (ASC CDL). Values < 1 darken midtones, > 1 brighten them. Keyframeable.
gainCdlscalar1.0Gain multiplier (ASC CDL). Scales values before lift and gamma. Keyframeable.
saturationscalar1.0Color saturation. 0 = grayscale, 1 = original, > 1 = oversaturated. Keyframeable.
hueShiftscalar0.0Hue rotation in normalized units (1.0 = full 360-degree rotation). Keyframeable.
temperaturescalar0.0White balance shift along the blue-orange axis. Positive = warmer (orange), negative = cooler (blue). Keyframeable.

Expose Channels

When enabled (E button on node header), adds input ports that override params via edge connections:

PortTypeOverrides
exposure_inscalarexposure
gain_inscalargain
lift_inscalarlift
gammaCdl_inscalargammaCdl
gainCdl_inscalargainCdl
saturation_inscalarsaturation
hueShift_inscalarhueShift
temperature_inscalartemperature

How It Works

All eight adjustments are applied in a single GPU pass, in this order:

  1. Exposure -- multiplies by 2^exposure (photographic stops)
  2. Gain -- linear brightness multiply
  3. ASC CDL -- gain_cdl multiply, then lift add, then gamma power curve
  4. Saturation -- lerp between luminance (Rec. 709 weights) and the color
  5. Hue shift -- RGB-to-HSL conversion, hue rotation, HSL-to-RGB (skipped when hue shift is near zero)
  6. Temperature -- shifts the blue-orange axis with slight green compensation (skipped when near zero)

The processing is done in premultiplied alpha space (unpremultiply before, repremultiply after) to prevent alpha artifacts.

Usage Examples

Basic: Brighten and warm up footage

  1. Add a ColorCorrect node after your image source
  2. Set exposure to 0.5 (half a stop brighter)
  3. Set temperature to 0.3 for a warm look
  4. Reduce saturation to 0.85 to keep colors from getting too vivid

Creative: Desaturated cinematic look

  1. Set saturation to 0.4
  2. Set lift to 0.05 to raise the black point (milky shadows)
  3. Set gainCdl to 0.9 to slightly lower overall brightness
  4. Set temperature to -0.1 for a cool teal tone

Advanced: Procedural color shift

Enable expose channels and connect a Noise scalar output to hueShift_in for a shifting psychedelic color effect. Connect a Time node through Math to saturation_in for saturation that changes over time.

Tips

  • The parameter groups in Properties are organized as: Exposure & Gain, Lift / Gamma / Gain, Saturation & Color
  • exposure and gain are multiplicative -- for small adjustments, exposure (in stops) is more intuitive; for precise control, use gain
  • The ASC CDL parameters (lift/gamma/gain) follow the industry standard Color Decision List order, making it easy to match grades from other tools
  • temperature at 0 is neutral; the range is unbounded but typical values are -1 to 1
  • Hue shift wraps smoothly, so 0.5 shifts all hues by 180 degrees
  • Levels -- per-channel input/output range remapping
  • Curves -- arbitrary per-channel tone curves
  • 3D LUT -- apply a .cube file color transform
  • Colorize -- remap luminance to a color gradient

Caddis — professional motion design.