OC Outfit Facewear Part
The facewear slot
- oc_part
- prompt_preview
- debug_text
OCOutfit Facewear Part covers what goes on the face: 51 options under 面部饰品, split between glasses (眼镜) and masks (面具). The catalog is exactly the anime-goggles-and-glamour set you'd hope for: bespectacled, black-framed_eyewear, blue-framed_eyewear, brown-framed_eyewear, coke-bottle_glasses, crooked_eyewear, bird_mask, diving_mask, domino_mask, and the reliably useful bandage_over_one_eye and Blindfold.
It's the smallest of the "wearable" part nodes after jewelry, which is fine - facewear is a tight category, and 51 options covers it honestly. It feeds Character Outfit Block's facewear_part input, near the end of the slot order, right before jewelry.
How it works
mode-unset(default, emits nothing),fixed, orrandomize. The pack-wide footgun applies: wire it in, never touch mode, and no facewear gets emitted.option- static dropdown over all 51, formatted面部饰品 / 眼镜 | 用绷带包扎一只眼睛 -> bandage_over_one_eye.
group has three choices (__all_groups__, 面部饰品 / 眼镜, 面部饰品 / 面具) and the option dropdown is static, so a group/option mismatch falls back to the first valid item in the chosen group, with a debug_text note. randomize is deterministic (same seed, same facewear). color_role defaults to auto, mapping the facewear slot to neutral - sensible, since most glasses and masks shouldn't be fighting your palette's accent color for attention. If you do want a coordinated-colored mask, set color_role explicitly to primary or accent.
Outputs
oc_part (typed OC_PART_OUTFIT_FACEWEAR, wire into facewear_part), prompt_preview (the resolved tag), debug_text (mode, color role, pool index).
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/Zhuozhuo-219/ComfyUI-OC-Generator
Restart ComfyUI, or ComfyUI Manager (search ComfyUI-OC-Generator). No extra dependencies, no model downloads - the catalog ships in-repo.
The realistic take: it's a thin but honest node. 51 options covers the glasses and masks that actually show up in anime character art, and the bandage_over_one_eye type tags are the ones you'll genuinely reach for. Anything more specific - a particular eyewear frame your OC wears - is OC Generator prefix_prompt territory. And the standard checklist applies: if the face comes out bare, check mode isn't unset before you blame the checkpoint.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| group | COMBO | __all_groups__ | Limit the part to one subgroup inside this slot. The option dropdown is still static in the UI. |
| mode | COMBO | unset | unset emits no prompt. fixed keeps the selected option. randomize samples within the current slot pool. |
| option | COMBO | 面部饰品 / 眼镜 | 用绷带包扎一只眼睛 -> bandage_over_one_eye | Static dropdown for all options in this part node. If the selected option is outside the current group, execution falls back to the first valid item in that group. |
| color_roleopt | COMBO | auto | How this part should consume the global palette. auto lets Character Outfit Block assign a role by slot. |
| seedopt | INT | 00–4294967295 | Seed used by randomize mode for reproducible part selection. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| oc_part | OC_PART_OUTFIT_FACEWEAR | Structured local part data for Character Outfit Block. |
| prompt_preview | STRING | The prompt fragment resolved by this part node. |
| debug_text | STRING | Execution details for slot filtering and random selection. |