LayerColor: Colorof Shadow Highlight V2
Color of Shadow & Highlight V2 — split-tone your darks and lights separately
- image
- mask
- image
This is the cinematic color-grading node. Cool shadows, warm highlights - the teal-and-orange look that makes a flat render feel like a graded film still. It works because it treats the dark parts and bright parts of your image as two separate targets you can tint and adjust independently, exactly like the shadows/highlights split in a proper color grader.
Reach for it when a global brightness/contrast tweak isn't enough and you want mood. Push warmth into the highlights and a touch of blue into the shadows and suddenly the image reads as intentional. It's more surgical than BrightnessContrast and more about atmosphere than Levels.
How it works
The node splits the tonal range into a shadow zone and a highlight zone, and gives each its own brightness, saturation, and hue controls. The two range sliders decide how much of the image counts as "shadow" and "highlight" - narrow ranges target just the extremes, wide ranges reach into the midtones. An optional mask limits the whole effect to part of the frame.
The inputs and outputs that matter
It's a big panel, but it's symmetric - the same five controls for shadows and for highlights:
shadow_hue/highlight_hue(−255 to 255) - the tint. This is the split-toning core: negative/positive shifts the color of that tonal band. Blue shadows, amber highlights, done here.shadow_saturation/highlight_saturation- how strong that tint reads.shadow_brightness/highlight_brightness- lift or drop that band's luminance.shadow_range/highlight_range(default 0.25) - how wide each zone is. Keep them small to avoid the tint bleeding into skin midtones.shadow_level_offset/highlight_level_offset- nudge where the band sits.- Optional
maskto confine the grade.
Output: one graded image.
How to install it
Ships in the LayerStyle pack. ComfyUI Manager → search LayerStyle → install → restart. Manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/chflame163/ComfyUI_LayerStyle
pip install -r ComfyUI_LayerStyle/requirements.txt
then restart. Under 😺dzNodes → LayerColor. No model download.
Common issues & troubleshooting
The tint bleeds everywhere / skin goes weird. Your range sliders are too wide, so the shadow or highlight zone is eating the midtones where skin lives. Narrow shadow_range/highlight_range back toward the extremes and the grade stays where you want it.
Effect looks muddy. You're probably fighting yourself - pushing both bands hard toward similar hues flattens contrast. The classic look is complementary: warm one end, cool the other.
You want it only on the subject or only the background. Feed a mask. Without one, the grade is global.
The node never shows up. That's a pack-level import failure. LayerStyle's most common one is a broken transformers dependency (frequently a stray TensorFlow) that crashes the entire pack on load. Check the traceback, use "Try Fix," or repair the named library.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| shadow_brightness | FLOAT | 1.000–3 | — |
| shadow_saturation | FLOAT | 1.000–3 | — |
| shadow_hue | INT | 0-255–255 | — |
| shadow_level_offset | INT | 0-99–99 | — |
| shadow_range | FLOAT | 0.250.01–0.99 | — |
| highlight_brightness | FLOAT | 1.000–3 | — |
| highlight_saturation | FLOAT | 1.000–3 | — |
| highlight_hue | INT | 0-255–255 | — |
| highlight_level_offset | INT | 0-99–99 | — |
| highlight_range | FLOAT | 0.250.01–0.99 | — |
| maskopt | MASK | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |