LayerColor: RGB
RGB
- image
- image
This is the bluntest color tool in the Layer Style pack, and that's the point. LayerColor: RGB adds or subtracts a flat amount from the red, green, and blue channels - no curves, no tonal weighting, no masks. You want to warm an image up? Push R up, drop B a touch. Killing a green cast from bad lighting? Pull G down. It's the Photoshop "add a number to a channel" operation, dropped straight into your graph.
Under the hood it's exactly what it sounds like: a per-channel offset. Each of R, G, B takes a value from -255 to 255 (default 0, which is a no-op), and that value gets added to every pixel in that channel before clamping back into range. That's it. There's no attempt to protect highlights or shadows - crank a channel hard and you'll blow it out or crush it flat. That directness is a feature when you know what cast you're fighting, and a footgun when you're just nudging blindly.
The inputs that matter are the only three there are:
- R / G / B - the offset for each channel, -255 to 255. Small numbers go a long way; you rarely want more than ±40 for a natural correction.
- image - your source. The single image output is the shifted result, which you wire straight into a save, a preview, or the next adjustment.
Where you'd actually reach for this: quick color-cast removal on a generated image or a photo, or pushing a deliberate tint for mood. If your render came out sickly green or too cold, a couple of RGB nudges fix it faster than loading a curves node. It also stacks - drop two or three LayerColor nodes in a row and you've got a little grade chain.
The thing to understand is what it isn't. If you want the shift to fall mostly in the shadows or highlights - the classic "warm shadows, cool highlights" film look - this is the wrong node; that's what LayerColor: ColorBalance does, since it weights the shift by tonal range. RGB here hits everything equally. Think of RGB as the sledgehammer and ColorBalance as the scalpel. For neutral white-balance work, ColorTemperature is usually the friendlier knob. RGB earns its keep when you know precisely which channel is off and by how much.
Install is the pack standard. Easiest 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. If you're on a hosted ComfyUI, this pack is usually baked into the image already, so there's nothing to install.
One heads-up that applies to the whole pack, not this node specifically: Layer Style is genuinely notorious for import failures. You install it, restart, and the entire node set shows up red or missing. It's almost never a given node - it's a dependency clash. The pack pulls a heavy stack (transformers, onnxruntime, opencv and friends), and one mismatched version - a stray transformers or tensorflow in the environment is the classic culprit - takes the whole thing down on import. The fix is unglamorous but reliable: open the ComfyUI startup log, find the traceback (it names the package that actually blew up), reinstall the requirements against ComfyUI's own Python, and use Manager's Try Fix. Don't debug this node until the pack imports clean - if RGB is missing, so is everything else in the pack, and that's your real problem.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| R | INT | 0-255–255 | — |
| G | INT | 0-255–255 | — |
| B | INT | 0-255–255 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |