Nodes/ComfyUI-BBTools/🅱🅱空白图片|Empty Image
ComfyUI Node

🅱🅱空白图片|Empty Image

A blank canvas that also hands you a mask — the boring node that saves you a dozen others

By bbaudio-2025·Created about a year ago·Updated about a year ago· 0
🅱🅱空白图片|Empty Image
    • Image RGB
    • Alpha as Mask
    • Image RGBA
    width512
    height512
    batch1
    red0
    green0
    blue0
    alpha0.00

    It makes a blank image in whatever size, color, and transparency you ask for. That's the whole node, and before you scroll past thinking you already have ComfyUI's built-in EmptyImage, check the outputs: this one also gives you a MASK filled with your alpha value. The stock node doesn't. That single socket is why you'd pick this over core, and it shows up more than you'd expect in real workflows.

    Why you'd reach for it

    Blank images are plumbing, not glamour, but they're everywhere once you look. You need a solid base to composite a generated subject onto. You need a uniform mask to force an inpainting region or to blank out part of a frame before a detail pass. You need batch frames of the same canvas to line up frame counts in an AnimateDiff or Wan video workflow. The KB's masking doc talks a lot about detecting regions - this is the opposite: a node that hands you a flat, predictable mask on purpose, the way core's empty latent starts a generation. Every workflow has a spot where you just want "an image, any image, that is exactly this color," and this is the low-drama way to get one.

    How it works

    Under the hood it's embarrassingly simple, in the good way. It fills four torch tensors on CPU - red, green, blue each scaled to 0–1, plus your alpha as a fourth value - and concatenates them. No model, no GPU memory drama, no dependencies beyond what ComfyUI already ships. It's the same trick core's EmptyImage uses, with per-channel color and an alpha output bolted on. Because nothing is generated, it runs in a millisecond and never changes seed to seed.

    The inputs that matter

    Only a handful are worth touching:

    • width / height - 512 default, stepped in multiples of 8, min 8. Match the rest of your workflow's resolution or the downstream node will resize anyway.
    • batch - how many identical copies. Set it to your video's frame count when you're feeding a video pipeline.
    • red / green / blue - 0–255. The canvas color. Black (0,0,0) is the default.
    • alpha - 0 to 1, and here's the trap: the default is 0. That means the Alpha as Mask output is all black and the Image RGBA output is fully transparent out of the box. If you just want a colored canvas, that's fine - wire Image RGB. If you want a white mask or an opaque RGBA, you have to raise alpha yourself. Forgetting this is the "why is my mask black" post.

    The outputs

    • Image RGB - the normal 3-channel IMAGE. Wire this where any image is expected.
    • Alpha as Mask - a MASK of your alpha value. This is the differentiator; it feeds mask inputs on samplers, inpainting, and compositing nodes directly, no Image-to-Mask conversion in between.
    • Image RGBA - 4-channel. Few ComfyUI nodes actually consume RGBA, so this mostly sits there until something needs it.

    Install and the gotchas

    No models, no extra pip packages - the pack declares zero dependencies and the code only uses torch, PIL, and numpy, all already inside ComfyUI. Install via ComfyUI Manager (search ComfyUI-BBTools or "BBTools") or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/bbaudio-2025/ComfyUI-BBTools
    

    then restart ComfyUI. That's it. Two real things to remember: raise alpha if you want a usable mask, and keep width/height on the 8-step grid the widget enforces (it won't accept 500x500 without snapping). The author - bbaudio-2025, better known for the VACE long-video tools - keeps this pack as a grab-bag of small utilities, so expect the node to be minimal rather than fancy. Minimal is fine when "blank image" is the whole job.

    Category🅱🅱Tools

    Inputs (7)

    NameTypeDefaultDescription
    widthINT5128–16384
    heightINT5128–16384
    batchINT11–10000
    redINT00–255
    greenINT00–255
    blueINT00–255
    alphaFLOAT0.000–1

    Outputs (3)

    NameTypeDescription
    Image RGBIMAGE
    Alpha as MaskMASK
    Image RGBAIMAGE