πΉοΈ CR Apply Multi-ControlNet
Stack several ControlNets onto pos and neg at once
- base_positive
- base_negative
- controlnet_stack
- base_pos
- base_neg
- show_help
When one ControlNet isn't enough - say you want depth and pose and a Canny edge all guiding the same render - you don't want three apply nodes chained by hand. This node takes a whole CONTROL_NET_STACK and applies every ControlNet in it to your positive and negative conditioning in a single step.
It's the stack-applying half of Comfyroll Studio's ControlNet system (Suzie1 / RockOfFire). You build the list - which ControlNets, which control images, what strengths and step ranges - in a CR Multi-ControlNet Stack node, and this one executes the whole batch.
How it works
Each entry in the stack is a ControlNet plus its control map and settings. This node walks that list and folds every one into your base conditioning, so all of them steer the same generation together. Because it applies to both base_positive and base_negative, the guidance is wired into your conditioning pair cleanly rather than living on a separate ControlNet-conditioning branch.
The heavy lifting - per-net strength, and the start/end step timing that lets one net guide early composition while another kicks in later - lives in the stack node. This node is the applicator; the stack is the control panel.
The inputs that matter
base_positive/base_negative- your conditioning pair from the text encoders. Both go in, both come out with the stack applied.controlnet_stack- theCONTROL_NET_STACKfrom a CR Multi-ControlNet Stack node. This carries the actual ControlNets, their control images, strengths, and step ranges.switch(On/Off) - bypass the whole stack at once, without tearing down the connections. Perfect for a with/without comparison.
Outputs are base_pos and base_neg (your conditioning, now guided), plus the show_help link. Wire those into your sampler's positive and negative inputs.
How to install it
- ComfyUI Manager: search
Comfyroll Studio, install, restart. - Manual:
cd ComfyUI/custom_nodes && git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git, then restart.
ControlNet models aren't bundled - put them in ComfyUI/models/controlnet.
Common issues
Every ControlNet in the stack has to match your base architecture. Mixing an SD 1.5 ControlNet into a stack you're applying to an SDXL model will break it - the whole stack has to speak the same architecture as the checkpoint.
The subtler trap with multiple ControlNets is over-conditioning: three nets all at strength 1.0 for the full sample fight each other and crush the prompt into a stiff, over-constrained image. Stagger them. Use the stack's start/end step controls so structure nets (depth, pose) do their work early and release, and pull individual strengths down - a good multi-ControlNet result usually has lower per-net strengths than a single one. If you're getting mush, that's the first thing to fix. And if the node's missing from the menu, the Comfyroll pack failed to load, which is a pack-level issue rather than this node.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| base_positive | CONDITIONING | β | |
| base_negative | CONDITIONING | β | |
| switch | COMBO | 2 options: Off, On | |
| controlnet_stack | CONTROL_NET_STACK | β |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| base_pos | CONDITIONING | β |
| base_neg | CONDITIONING | β |
| show_help | STRING | β |