Nodes/Dream Painter/⟏ Shape Combiner
ComfyUI Node

⟏ Shape Combiner

Bundle up to four shapes into one before you render

By alt-key-projectΒ·Created 2 years agoΒ·Updated 2 years agoΒ· 2
⟏ Shape Combiner
  • SHAPE
  • SHAPE2
  • SHAPE3
  • SHAPE4
  • SHAPE

A scene is rarely one shape. It's a rectangle behind a star behind a ring, and Dream Painter's Draw Shape As Bitmap renders one SHAPE object at a time. Shape Combiner is the node that lets you compose: it takes up to four shapes and merges them into a single SHAPE, so one render pass draws the whole scene instead of you juggling four renders and four boolean merges.

In the pack's example graphs this is everywhere - rays_of_color and butterfly both feed multiple generated shapes into a Combiner before the render step. The pattern is: generate a bunch of geometry, combine it, render once. That single render gives you one bitmap, and one bitmap is one clean guide for the ControlNet.

How it works

Under the hood it's almost trivially simple: a Shape in this pack is a list of sub-shapes, and combining just appends those lists into one. All four inputs are optional, and any that are left unwired are skipped - so you can use it with two shapes, or three, or one. What you get back is a single SHAPE containing everything, drawn in the order the inputs are wired (which matters when shapes overlap and you care about which one paints over which).

The composition is purely additive: it doesn't union or subtract geometry, it stacks it. If you want boolean effects on the pixels, that's what the Bitmap AND / OR / XOR nodes are for, after rendering. Combiner is the "package it up" step, not the "booleanize it" step.

Inputs and outputs

  • SHAPE, SHAPE2, SHAPE3, SHAPE4 - all optional; wire however many you have.

Output:

  • SHAPE - the combined shape.

Installing

From the Dream Painter pack (comfyui-dream-painter, alt-key-project). ComfyUI Manager β†’ Install Custom Nodes β†’ search Dream Painter β†’ install β†’ restart. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/alt-key-project/comfyui-dream-painter
cd comfyui-dream-painter
pip install -r requirements.txt

No models, no downloads.

Common issues

Two gotchas. First, the output shape's bounds are the union of all inputs' bounds - so a scene spread across the 0–1 space combined with another scene at a different location will have a wide bounding box, and rendering with the default viewport might clip parts. Run the result through Shape Center & Fit to normalize before rendering. Second, you can't chain unlimited shapes through one Combiner (it stops at four) - but Combiner outputs are themselves shapes, so stacking two Combiners gives you up to eight. Just be aware draw order follows input order, so keep the "back" shapes in the lower inputs.

CategoryπŸ–Œ DPaint/β–’ shape

Inputs (4)

NameTypeDefaultDescription
SHAPEoptSHAPEβ€”
SHAPE2optSHAPEβ€”
SHAPE3optSHAPEβ€”
SHAPE4optSHAPEβ€”

Outputs (1)

NameTypeDescription
SHAPESHAPEβ€”