Nodes/ComfyUI_EasyRegion/EasyRegion (Area-Based)
ComfyUI Node

EasyRegion (Area-Based)

Regional prompting for SD1.5 and SDXL, minus the node spaghetti

By EnragedAntelope·Created 9 months ago·Updated 9 months ago· 2
EasyRegion (Area-Based)
  • clip
  • conditioning
background_promptphoto of a city street, high quality
region1_promptred sports car
region2_promptgiraffe wearing sunglasses
region3_prompt
region4_prompt

You're on SD1.5 or SDXL, you want "left third gets one prompt, right third gets another," and you do not want to build the usual regional-conditioning tower - a handful of CLIP Text Encode nodes, some Conditioning (Set Area) math, and enough wires to wallpaper a room. EasyRegion (Area-Based) is the short version. Same box-drawing canvas as its mask-based sibling, but built for the classic area-based conditioning path that SD1.5, SD2.x and SDXL use.

It's one node. CLIP goes in, you type a background prompt plus up to four region prompts, you drag boxes on the canvas, and a single conditioning comes out ready for your sampler. No external text encoders anywhere in the graph.

How it works

Area conditioning is the original regional technique, and this node is a wrapper around it. Every prompt gets CLIP-encoded, then each region's conditioning is stamped with an area - your box coordinates divided by 8 into latent space - plus a strength. Under the hood that's exactly what the built-in Conditioning (Set Area) node does; the point here is you never see any of it. Type, draw, run.

One thing to know before you fall in love: the canvas is fixed at 512×512 and boxes are interpreted in that space. That's perfect for SD1.5's native resolution. If you're generating SDXL at 1024+, the boxes don't map where they look like they do - your carefully drawn right-half box ends up covering something like the middle-right quarter of the actual image. Keep this node for 512-ish outputs, or if you're on modern mask-based models (Flux, SD3), walk over to its sibling, EasyRegionMask, instead. The choice between the two nodes is decided by your checkpoint, not your preference.

The inputs

  • clip - from your checkpoint.
  • background_prompt - the whole-scene description that everything sits on top of.
  • region1–4_prompt - the per-box content. Only region 1 is required.

That's honestly it. There are no per-region strength sliders on this one - strength is baked into the box data at a fixed 1.0, which works fine for SD-class area conditioning. The canvas gives you the region selector and box_x, box_y, box_w, box_h for nudging geometry, and the conditioning output wires into your sampler's positive input.

Install

It ships in the same pack as EasyRegionMask, so it's one install for both. ComfyUI Manager → search ComfyUI_EasyRegion, or:

cd ComfyUI/custom_nodes
git clone https://github.com/EnragedAntelope/ComfyUI_EasyRegion

Then restart ComfyUI. No requirements.txt, no model downloads - it uses your existing CLIP and torch. This is about as painless as custom nodes get.

Gotchas

  • Keep boxes inside the canvas and not fullscreen - a fullscreen box is treated as background and skipped.
  • On SDXL at 1024+, the fixed 512 canvas means your boxes won't land where you drew them (see above). At 512 it just works.
  • This node is not for Flux, SD3, Chroma or Qwen-Image - those need mask-based conditioning, which is the other half of this pack.
CategoryEasyRegion

Inputs (6)

NameTypeDefaultDescription
clipCLIPCLIP model from your checkpoint
background_promptSTRINGphoto of a city street, high qualityBackground/scene description (applies to whole image)
region1_promptSTRINGred sports carRegion 1 - First region/box (see canvas below)
region2_promptoptSTRINGgiraffe wearing sunglassesRegion 2 - Second region/box (see canvas below)
region3_promptoptSTRINGRegion 3 - Third region/box (see canvas below)
region4_promptoptSTRINGRegion 4 - Fourth region/box (see canvas below)

Outputs (1)

NameTypeDescription
conditioningCONDITIONING