Nodes/comfyui-uonr-nodes/Preset Empty SD3 Latent Image
ComfyUI Node

Preset Empty SD3 Latent Image

SD3 and Flux need a 16-channel blank canvas — this hands you one

By uonr·Created 5 months ago·Updated 5 months ago· 0
Preset Empty SD3 Latent Image
    • LATENT
    resolution1024x1024 (1:1)
    batch_size1

    The name is a lie in the fun way: this node makes no SD3 call and doesn't care what you feed it downstream. It just creates a blank latent with the channel count SD3 and Flux actually need, which is 16 instead of the usual 4. If you've ever wired ComfyUI's stock EmptyLatentImage into a Flux or SD3 workflow and watched it die with a shape mismatch, you already know why this exists. This is the version with training wheels: nine preset resolutions, all within a hair of the same pixel count as 1024x1024, plus a batch_size field.

    Here's the mechanism, because it's the whole point. Diffusion models don't denoise pixels, they denoise a compressed latent that a VAE maps back to pixels. The SD 1.5/SDXL lineage used a 4-channel autoencoder at 8x spatial compression. SD3 and the Flux family went to a 16-channel autoencoder at the same 8x per side - four times the information per unit of latent, which is why they hold texture through img2img passes that would smear an SDXL latent. Feed one of those models a 4-channel tensor and it fails on shape before any sampling happens. This node does what ComfyUI's own EmptySD3LatentImage does - torch.zeros of shape [batch, 16, height//8, width//8], flagged with the spatial downscale ratio so downstream nodes know what they're looking at - and then wraps it in a resolution dropdown so you don't have to type it.

    The two inputs that matter:

    • resolution - the preset list. You get 1024x1024 (1:1), the portrait/landscape steps like 1152x896 (9:7) and 1216x832 (19:13), all the way out to 1536x640 (12:5) and 640x1536 (5:12). Every one is a multiple of 64, and they're all built to hover around one megapixel, which is what SD3-class models were trained at.
    • batch_size - how many blank latents to stack. Default 1; the UI lets you go to 4096, but on a 16-channel latent that's "please OOM me" territory. Leave it alone unless you actually want a batch.

    Output is a single LATENT that plugs straight into a sampler's latent input, usually after a KSampler/SamplerCustom on the model side.

    Installing the pack is the easy part - it's a no-dependency utility pack, "Personal ComfyUI custom nodes" in the author's own words. In ComfyUI Manager search for comfyui-uonr-nodes, or clone it in:

    cd ComfyUI/custom_nodes
    git clone https://github.com/uonr/comfyui-uonr-nodes
    

    Then restart ComfyUI. There are no model downloads and no requirements.txt - the pack ships pure ComfyUI.

    Where people get burned: using this 16-channel node with SD 1.5 or SDXL, which want 4 channels and will error the same way in reverse. And the reverse mistake - grabbing the pack's 4-channel PresetEmptyLatentImage for a Flux job. Pick by what your checkpoint's VAE wants, not by habit. Resolution-wise you can relax; since these are pixel-space presets and models now tolerate a megapixel band, the exact ratio matters less than staying near native pixel count.

    Categorylatent/sd3

    Inputs (2)

    NameTypeDefaultDescription
    resolutionCOMBO1024x1024 (1:1)Preset width and height near the same pixel count as 1024x1024.
    batch_sizeINT11–4096The number of latent images in the batch.

    Outputs (1)

    NameTypeDescription
    LATENTLATENTThe empty SD3 latent image batch.