Latent to L/R Masks MXD
Left mask, right mask — split a latent down the middle
- latent
- mask_left
- mask_right
Sometimes you want to treat the left half of your canvas differently from the right half - different conditioning, different denoise, a slide-comparer effect, a wipe transition. Latent to L/R Masks MXD is the smallest possible tool for that: give it a latent, and it hands back two masks - mask_left covering the left half and mask_right covering the right half. Each is a hard binary split down the vertical center line, full height.
What it does
One input (latent), two outputs:
mask_left- 1.0 on the left half, 0.0 on the rightmask_right- the mirror image
The node infers the pixel dimensions from the latent's spatial shape (multiplying the latent's 1/8-scale dims back up to image resolution - it assumes the standard 8× VAE scale), then builds the two masks at full image size. No feathering, no blur, no swap option: the source is explicit that it's "Always vertical, center split, no feather, no swap." You get what the box says, and nothing else.
What it's for
The obvious use is regional work: feed mask_left into a mask-blend or mask-conditioning setup so the left side follows one prompt and the right side another. In the pack's mask toolset (which also includes place-by-mask and crop-by-mask), it's the "build the mask from the latent you already have" shortcut - you don't need a separate image to generate a mask from; the latent itself defines the geometry.
It also slots into video tricks: split a frame's latent into halves and you've got a clean wipe boundary you can animate. Since the masks are hard-edged binary tensors, you can blur or grow them with mask-processing nodes downstream if you want soft edges - the node deliberately leaves that to you.
Gotchas
- It assumes 8× VAE scaling. If you feed it a latent from a model with a different compression ratio (some video models use 16× or more), the masks will still be correct relative to each other, but they'll be sized to the wrong image dimensions - check before wiring into an image-sized operation.
- No horizontal split. Left and right only. For top/bottom you'd need to rotate your latent first or use a different mask generator.
- Empty or malformed latent → explicit error ("invalid latent or missing samples tensor"), which is the honest behavior.
Install
ComfyUI Manager → search Maxed Out → install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/Maxed-Out-99/ComfyUI-MaxedOut
No requirements.txt, no model downloads. Under MXD/latent. It's a two-output utility you'll reach for exactly when you need it - and then it's exactly what you need.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| latent | LATENT | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| mask_left | MASK | Mask covering the left half of the latent. |
| mask_right | MASK | Mask covering the right half of the latent. |