Nodes/ComfyUI-OC-Generator/OC Palette Block
ComfyUI Node

OC Palette Block

One palette, thirteen clothing slots, zero clashing colors

By Zhuozhuo-219·Created 3 months ago·Updated 2 months ago· 0
OC Palette Block
    • palette
    • palette_preview
    • debug_text
    modefixed
    palette_stylebalanced
    primary_1black
    primary_2__none__
    primary_3__none__
    secondarywhite
    accentred
    neutralgray
    seed0

    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 - fixed uses the colors you picked by hand; randomize throws your picks away and selects a preset from your chosen style.
    • palette_style - balanced, monochrome, high_contrast, warm, or cool. In fixed mode it's mostly a semantic label; in randomize mode 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

    • randomize overrides everything you typed. Pick your colors carefully, then flip mode to randomize, and they're gone - the presets are baked into the pack.
    • If a part looks wrong, check its color_role first. auto defers to the per-slot default; setting it to primary on 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.

    CategoryOC Generator/Character

    Inputs (9)

    NameTypeDefaultDescription
    modeCOMBOfixedfixed uses the manually selected colors. randomize selects a palette preset from the chosen palette style.
    palette_styleCOMBObalancedPalette family used by randomize mode and as a semantic description of the palette.
    primary_1COMBOblackFirst primary color. The palette may use up to three primary colors.
    primary_2COMBO__none__Optional second primary color.
    primary_3COMBO__none__Optional third primary color.
    secondaryCOMBOwhiteSecondary color for contrast or layering.
    accentCOMBOredAccent color for smaller emphasis areas.
    neutralCOMBOgrayNeutral support color for subtle parts like socks or shoes.
    seedINT00–4294967295Seed used when randomize mode selects a preset inside the chosen palette style.

    Outputs (3)

    NameTypeDescription
    paletteOC_PALETTEStructured palette data for Character Outfit Block.
    palette_previewSTRINGShort readable palette summary.
    debug_textSTRINGDebug details about the palette selection process.