Nodes/ComfyUI-Rodin/Rodin - BBox Controlnet
ComfyUI Node

Rodin - BBox Controlnet

It says ControlNet. It is not a ControlNet.

By DeemosTech·Created 2 years ago·Updated 3 months ago· 63
Rodin - BBox Controlnet
    • bbox
    Width100
    Height100
    Length100

    Let's get this out of the way: the Rodin - BBox Controlnet node has nothing to do with the ControlNet you know from image generation. No model weights, no conditioning, no control strength. If the knowledge-base ControlNet essay is your mental model, unlearn it for a second - this is a glorified dimension formatter, and that's fine, because that's what it's for.

    What it does

    It takes three integers - Width, Height, Length, each 1–300 (default 100) - and spits out a bbox string like [100, 100, 100]. That string is exactly what the Rodin generation nodes accept in their optional bbox input. Wire this node's output into, say, the bbox socket on the Gen 2.5 Regular Image node and you're telling the API the physical size of the object's bounding box in centimeters. The README even has a dedicated screenshot for this: "How to set Model height (in cm)." It's how you make sure your 3D chair comes out chair-sized instead of model-railroad-sized.

    The mechanism is literally that - check the source and main_func just builds str([Width, Height, Length]). There's no API call here at all. The node doesn't need a key, doesn't need the internet, and works whether or not the rest of the pack is even functional.

    Where it fits in the workflow

    The generation nodes' optional bbox input expects a string, and this node exists so you get three tidy number boxes instead of typing [120, 60, 60] by hand. That's the whole value. Two things worth knowing:

    • It's optional. Leave bbox unwired and Rodin just makes the object whatever size it wants, which is fine for drafts.
    • Some nodes also have a separate height_cm optional input - a single height in centimeters that scales proportionally. The bbox node controls all three dimensions explicitly, which is the stricter option.

    Honest sizing advice

    A bounding box of [100, 100, 100] is 1 meter cubed - humanoid-friendly. Characters typically want height around 170–180, a mug wants single digits, and a car is pushing toward 450. Set it to what the object is, not what looks nice in the preview. And remember the unit is centimeters, so the defaults will make a lot of everyday objects absurdly large if you just hit "Run" without thinking.

    Installing it

    Same pack as everything else here:

    cd ComfyUI/custom_nodes
    git clone https://github.com/DeemosTech/ComfyUI-Rodin.git
    pip install -r requirements.txt
    

    Or grab "ComfyUI-Rodin" via ComfyUI Manager and restart. There are no model files and no heavy dependencies - this node would work with the Python standard library alone.

    Troubleshooting

    Because it's pure string formatting, there's essentially nothing to break. If a downstream node rejects your bbox, the usual culprit is a format mismatch - this node emits exactly [W, H, L] with brackets and commas, which is what the API expects. If you're typing the string manually somewhere, match that format. And no, it won't ever give you a MISS_API_KEY - that's the one thing it can't do.

    CategoryMesh/Rodin

    Inputs (3)

    NameTypeDefaultDescription
    WidthINT1001–300
    HeightINT1001–300
    LengthINT1001–300

    Outputs (1)

    NameTypeDescription
    bboxSTRING