Nodes/WAS_Extras/WAS Load LUT
ComfyUI Node

WAS Load LUT

Build or load a color-grading LUT without leaving ComfyUI

By WASasquatch·Created 3 years ago·Updated 17 days ago· 43
WAS Load LUT
    • lut
    look
    builtin_size33
    custom_ev0.00
    custom_contrast1.00
    custom_saturation1.00
    custom_vibrance0.00
    custom_gamma1.00
    custom_temperature0.00
    custom_tint0.00
    custom_red_balance0.00
    custom_green_balance0.00
    custom_blue_balance0.00

    A LUT (look-up table) is just a fixed recipe for remapping color - feed it a color, it hands back a graded one. It's how film and video colorists get a consistent "look" across a whole project without redoing the grade by hand every shot. WAS Load LUT brings that into ComfyUI's graph instead of making you round-trip through DaVinci Resolve: pick a preset, dial in a custom grade, or load your own .cube file, and it hands you a LUT you can apply, blend, or save.

    It's part of a small pipeline WAS_Extras ships together (the pack's own README groups them under WASLUT.py): WAS Load LUT to get a LUT, WAS LUT Blender to combine two, WAS Apply LUT to actually grade an image with one, and WAS Save LUT to export back to .cube (its own article, since it's also in our set). This node is the entry point.

    How it works

    The look dropdown gives you named presets - Cinematic, Vibrant, Desaturated, High Contrast, Soft - plus Custom. It also scans your ComfyUI/models/LUT folder at startup and appends any .cube files it finds there, so the real dropdown you see is usually longer than just those five presets once you've dropped a downloaded or exported LUT into that folder. builtin_size sets the resolution of the generated cube (17–65, odd steps - 17/33/65-point is the standard sizing grading software already expects).

    Pick Custom and the ten custom_* sliders take over, synthesizing a LUT from scratch rather than loading one: exposure, contrast, saturation, vibrance (per its tooltip, boosts low-saturation areas more than already-saturated ones), gamma, white-balance temperature and tint, and per-channel red/green/blue balance. It's a fast way to bake a grade without wiring up a chain of separate image-adjustment nodes.

    The inputs and outputs that matter

    • look - the preset or .cube file to load, or Custom to build one.
    • builtin_size (default 33) - LUT resolution, matters for both builtins and custom synthesis.
    • The ten custom_* fields - only do anything when look is Custom. Each has a tooltip explaining exactly what it nudges (exposure, contrast, saturation, vibrance, gamma, temperature, tint, red/green/blue balance), so trust those over guessing.

    Output: lut (LUT type) - this doesn't touch pixels by itself. Wire it into WAS Apply LUT to grade an image, into WAS LUT Blender to combine it with another, or into WAS Save LUT to write it out as a portable .cube file.

    How to install it

    Via ComfyUI Manager: search WAS_Extras, install, restart. Manually:

    cd ComfyUI/custom_nodes
    git clone https://github.com/WASasquatch/WAS_Extras
    

    Restart ComfyUI. No model downloads and no extra dependencies for this node - it's pure Python color math plus whatever .cube files you supply yourself.

    Common issues & troubleshooting

    Your custom .cube files never show up in the dropdown. The node only scans ComfyUI/models/LUT - if that folder doesn't exist yet, create it, drop your .cube files in, and restart ComfyUI (or refresh the node's definitions) so it re-scans.

    Changed the custom_* sliders and nothing happened. Those only apply when look is set to Custom. Any other selection ignores them entirely, silently - check the dropdown before assuming the node's broken.

    Can't wire lut into an image node. That's expected - LUT is its own WAS-specific socket type, not an IMAGE. You need WAS Apply LUT downstream to actually affect pixels; this node only produces the recipe.

    Grade looks flat or barely different from the source. If you're on a builtin look, it's a fixed, fairly gentle recipe by design - for something stronger, switch to Custom and push custom_contrast/custom_saturation/custom_vibrance further than you'd expect, or load a punchier third-party .cube.

    CategoryWAS/Color/LUT

    Inputs (12)

    NameTypeDefaultDescription
    lookCOMBOSelect a builtin look, a discovered .cube LUT, or 'Custom'.
    builtin_sizeINT3317–65LUT dimension used for builtins or custom synthesis.
    custom_evFLOAT0.00-4–4Exposure value adjustment (Custom).
    custom_contrastFLOAT1.000.1–3Contrast multiplier (Custom).
    custom_saturationFLOAT1.000–3Saturation multiplier (Custom).
    custom_vibranceFLOAT0.00-1–1Boost low-saturation more than high (Custom).
    custom_gammaFLOAT1.000.1–3Gamma correction (Custom).
    custom_temperatureFLOAT0.00-1–1White-balance temperature (Custom).
    custom_tintFLOAT0.00-1–1White-balance tint (Custom).
    custom_red_balanceFLOAT0.00-1–1Red channel balance (Custom).
    custom_green_balanceFLOAT0.00-1–1Green channel balance (Custom).
    custom_blue_balanceFLOAT0.00-1–1Blue channel balance (Custom).

    Outputs (1)

    NameTypeDescription
    lutLUT