Nodes/ComfyUI Layer Style/LayerColor: Exposure
ComfyUI Node Runs on cloud

LayerColor: Exposure

Exposure

By chflame163·Created 3 years ago·Updated 4 days ago· 3,113
LayerColor: Exposure
  • image
  • image
â—„exposure20â–º

LayerColor: Exposure brightens or darkens an image the way a camera's exposure compensation does - a single dial that lifts or drops the overall light. If a render came out murky and underlit, or blown-out and washed, this is the quick fix. It's the "make it brighter/darker" node, and it does that job without ceremony.

There's one control:

  • exposure - runs -100 to 100, default 20. Positive brightens, negative darkens. Note the default isn't 0 - it ships at +20, so dropping a fresh node on an image gives it a small brightness lift out of the box. If you want a true no-op, set it to 0.

Give it an image, get an image back. Done.

The thing to understand is that exposure isn't the same as brightness in the naive sense. A photographic exposure adjustment scales the light multiplicatively, so it tends to lift the whole image in a way that feels more like "more light hit the sensor" than "add a flat gray value everywhere." In practice that means it can push highlights toward clipping if you crank it, and it's the more natural-feeling of the brightness tools in the pack for photo-style images. For a flatter, additive brightness that also lets you touch contrast and saturation in the same node, the AutoAdjust node is the fuller toolbox; for a hands-off automatic lift, AutoBrightness will figure out the amount for you. Exposure is the manual, single-purpose one.

Where it lands in a workflow: quick tonal rescue and grading. Underexposed generation? Nudge exposure up. Want a deliberately dark, moody frame? Pull it down. It stacks cleanly with the rest of the LayerColor set - exposure here, warmth in ColorTemperature, color casts in RGB or ColorBalance, a final look via the LUT node. Keep the moves modest; like any exposure control, push it too far and you either clip the highlights to white or crush the shadows to black, and neither comes back.

Install is the pack standard. Simplest is ComfyUI Manager - search ComfyUI Layer Style (or "LayerStyle"), install, restart. Manual route: cd ComfyUI/custom_nodes && git clone https://github.com/chflame163/ComfyUI_LayerStyle, then pip install -r requirements.txt from inside the folder using ComfyUI's Python, and restart. On a hosted ComfyUI it's typically preinstalled.

The pack-wide caveat: Layer Style is genuinely known for import failures - you install it, restart, and the whole node set is red or missing. It's rarely the node you wanted; it's a dependency clash. The pack pulls a heavy stack (transformers, onnxruntime, opencv), and one mismatched version - a stray transformers or tensorflow in the env being the usual suspect - takes the entire pack down on import. The fix is reliable if unexciting: read the ComfyUI startup log for the traceback (it names the package that actually failed), reinstall requirements against ComfyUI's own Python, and use Manager's Try Fix. If Exposure is missing, so is every other LayerStyle node, and that shared import failure is the real problem to solve first.

Category😺dzNodes/LayerColor

Inputs (2)

NameTypeDefaultDescription
imageIMAGE—
exposureINT20-100–100—

Outputs (1)

NameTypeDescription
imageIMAGE—