Nodes/BV Node Pack/πŸŒ€ BV Regional Color Control Image
ComfyUI Node

πŸŒ€ BV Regional Color Control Image

A deterministic color map of your regions, ready for layout control

By BlackVortexAIΒ·Created 9 months agoΒ·Updated 3 days agoΒ· 7
πŸŒ€ BV Regional Color Control Image
  • regional
  • control_image
  • legend_json

Some regional-control systems don't want your masks - they want a picture. LLLite-style layout control, the approach that's getting real traction on Anima, consumes a color-coded canvas where each region is a solid color, and it learns layout from that image rather than from per-pixel masks. BV Regional Color Control Image is the node that produces exactly that picture from your BV document: one deterministic solid RGB image plus a machine-readable legend. No model patching, no sampling, just compilation.

Why it exists

The pack's Anima LLLite node embeds this same renderer, but it's exposed standalone here because the output is useful beyond that one path. If you want to see what the layout map looks like before committing to it, if you're feeding a layout image into something that isn't the BV LLLite node, or if you just want a debug view of your region geometry as solid color, this is the node. It's the "authoring stays model-neutral" philosophy made visible: the same document that feeds attention backends also renders to the image format that LLLite-style controlnet variants want.

How it works

One input: regional. Two outputs: control_image (IMAGE) and legend_json (STRING).

The rendering is deliberately boring and stable. Every enabled region gets one solid color, unenabled regions don't appear, and the base is white. Where regions overlap, the P0 (highest priority) region wins - deterministic, not blended, so the color map is always unambiguous. That determinism is the entire point: a layout-control model needs the same region to mean the same color every run, or it learns nothing.

The legend_json output is the machine-readable side: a map from color to region identity (region ID, name, and color), so anything downstream can look up which region a color represents. For the LLLite workflow specifically, the pack uses this internally to keep the control image and the region metadata in sync.

When you'd actually use it

Realistic use cases: (1) the Anima LLLite workflow, where you often want to inspect control_image to confirm the map is what you think it is - the README even warns that editor display colors don't affect it, which is the thing that confuses people; (2) as a standalone visualization when debugging why a region isn't behaving, since a clean color block makes geometry errors obvious; (3) as a feeding node for your own experimental layout-control wiring. If you're not doing layout control at all, you don't need this node - the attention backends don't use it.

Install

Search BV Node Pack in ComfyUI Manager, or:

cd ComfyUI/custom_nodes
git clone https://github.com/BlackVortexAI/bv_nodepack.git

Restart, hard-refresh with Ctrl + F5. No dependencies, no model downloads - it's a pure render of the document.

The honest take

It's a small node, and that's fine - its job is to make layout control composable instead of locked inside the LLLite node. The one mental model to keep: this image is not a visualization of your editor colors. White plus one solid color per enabled region, priority wins overlaps, full stop. Expect that and you'll never be surprised by what the LLLite "sees."

CategoryπŸŒ€ BV Node Pack/regional/models/Anima

Inputs (1)

NameTypeDefaultDescription
regionalBV_REGIONALβ€”

Outputs (2)

NameTypeDescription
control_imageIMAGEβ€”
legend_jsonSTRINGβ€”