Blender Input Load Image
Feed an image into the workflow from your Blender panel
- group
- IMAGE
- MASK
Img2img, inpainting, ControlNet reference, image editing - they all start with an image, and if you're working in Blender you don't want to type a path or drag a file into a browser tab. BlenderInputLoadImage is ComfyUI's standard LoadImage node, re-skinned so the image picker lives on the add-on's panel. Pick from the images the server already has, or upload from the panel, and it flows into your workflow like any image loader.
The implementation is a subclass of ComfyUI's built-in LoadImage with the pack's standard order widget and optional group socket bolted on. execute calls the parent's load_image unchanged, and it even keeps the parent's IS_CHANGED behavior so the node re-runs when you pick a different file. No surprises - it's the native loader, wearing a Blender badge.
Inputs and outputs
- image - the image to load, from the server's
inputfolder. In Blender this becomes a dropdown of available files (and you can upload from the panel). - order - panel position, lower first.
Outputs are the standard IMAGE (the pixel tensor) and MASK (the alpha channel of the file, if it has one). Wire IMAGE into img2img/ControlNet/VAE encode paths, and MASK into inpainting or anywhere a mask is expected. If you want a mask only, there's a sibling node - BlenderInputLoadMask - that strips the IMAGE output and hard-codes the alpha channel.
Installing it
Whole-pack routine. ComfyUI side, ComfyUI Manager → search "ComfyUI-Blender", or:
cd ComfyUI/custom_nodes
git clone https://github.com/alexisrolland/ComfyUI-Blender
Restart ComfyUI. No extra Python dependencies, but you need a current ComfyUI - schema v3 nodes and the README says latest is required. The Blender add-on is the other half, a ZIP from the latest release installed via Edit > Preferences > Add-ons > Install from Disk.
Where people get burned
The image must live on the server's input folder, not your Blender machine - with a remote ComfyUI, upload through the panel or drop the file on the server first. Second, the MASK output only exists if the file actually has an alpha channel; a JPEG reference image gives you an empty mask, which silently breaks inpainting if you were expecting one. For reference/ControlNet work that's fine - just don't count on MASK when the file has no alpha. And the panel only builds after an API-format export and import, with the node title as the label ("Ref Image" beats "img_4"). When Blender shares the GPU with ComfyUI, decoding a large image is cheap but it's one more thing on the card - and the generation it feeds is the expensive part.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | COMBO | 1 options: example.png | |
| order | INT | 0-2147483648–2147483647 | Position of the input in the Blender add-on. |
| groupopt | GROUP | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |
| MASK | MASK | — |