OC Palette Block
One palette, thirteen clothing slots, zero clashing colors
- palette
- palette_preview
- debug_text
The easiest way to wreck an otherwise good character is a jacket in one color family, pants in another, and shoes that belong to neither. OC Palette Block is the ComfyUI-OC-Generator answer: one node that defines a coordinated color system, then lets every clothing slot dip into it. Instead of hand-typing "red top, red skirt, red shoes" and hoping the shades agree, you set a palette once and the pack distributes the colors for you.
It's marked as the pack's color brain for a reason. You connect its palette output to OC Character Outfit Block's palette socket, and each connected outfit part picks up a color according to its role. The defaults are sensible: upper and outer garments take a primary color, the lower half takes secondary, and small items - neckwear, jewelry, decorations, and notably the waist - default to the accent. Socks and shoes lean neutral. That split is why the palette carries up to three primaries: a two-tone outfit rotates through them per slot instead of painting everything the same shade.
What you actually set
Seven required inputs, of which four are the real deal:
- mode -
fixeduses the colors you picked by hand;randomizethrows your picks away and selects a preset from your chosen style. - palette_style -
balanced,monochrome,high_contrast,warm, orcool. Infixedmode it's mostly a semantic label; inrandomizemode it's the family the preset is drawn from. - primary_1 / primary_2 / primary_3 - up to three main colors. Extra primaries are what make an outfit read "coordinated" instead of "uniform."
- secondary, accent, neutral - the supporting cast.
__none__disables any of them.
Each color dropdown lists 142 named colors (aliceblue, forestgreen, the whole CSS gang, plus anime-familiar names like blonde). randomize is deterministic given the seed input, so you can reroll palettes reproducibly until one clicks.
Where the colors actually go
When a part resolves with a color role, the pack literally prepends the color name to the tag: red corset, navy school_uniform. That's it - no hex math, no conditioning. It works because anime SDXL models (Illustrious, NoobAI, Pony) understand color words in exactly that position, and it's a big part of why the whole pack can get away with being pure prompt text.
Three outputs: palette (structured OC_PALETTE data for the Character Outfit Block), palette_preview (a one-line summary like primary=navy+white, secondary=gray, accent=gold, neutral=black), and debug_text telling you which preset or manual path was used.
Gotchas
randomizeoverrides everything you typed. Pick your colors carefully, then flip mode torandomize, and they're gone - the presets are baked into the pack.- If a part looks wrong, check its
color_rolefirst.autodefers to the per-slot default; setting it toprimaryon every slot will make the whole outfit one color.
Install is the pack's usual light touch: ComfyUI Manager (search "ComfyUI-OC-Generator") or git clone https://github.com/Zhuozhuo-219/ComfyUI-OC-Generator into custom_nodes/, restart, done. No models, no pip dependencies.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| mode | COMBO | fixed | fixed uses the manually selected colors. randomize selects a palette preset from the chosen palette style. |
| palette_style | COMBO | balanced | Palette family used by randomize mode and as a semantic description of the palette. |
| primary_1 | COMBO | black | First primary color. The palette may use up to three primary colors. |
| primary_2 | COMBO | __none__ | Optional second primary color. |
| primary_3 | COMBO | __none__ | Optional third primary color. |
| secondary | COMBO | white | Secondary color for contrast or layering. |
| accent | COMBO | red | Accent color for smaller emphasis areas. |
| neutral | COMBO | gray | Neutral support color for subtle parts like socks or shoes. |
| seed | INT | 00–4294967295 | Seed used when randomize mode selects a preset inside the chosen palette style. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| palette | OC_PALETTE | Structured palette data for Character Outfit Block. |
| palette_preview | STRING | Short readable palette summary. |
| debug_text | STRING | Debug details about the palette selection process. |