Nodes/ComfyUI-Continuity/Continuity Storyboard
ComfyUI Node

Continuity Storyboard

The 3×3 cheat sheet that stops your video forgetting the room

By roadmaus·Created about a month ago·Updated about 19 hours ago· 87
Continuity Storyboard
  • frames_1
  • frames_2
  • frames_3
  • frames_4
  • frames_5
  • frames_6
  • frames_7
  • frames_8
  • frames_9
  • IMAGE
width1344
height768

You know the failure. Shot 1 has a blue boat and a crane on the dock. You cut to another angle of the same street and the model - which has no memory of what it just made - re-imagines the place: different boat, different crane. Nothing crosses the cut, so nothing carries.

ContinuityStoryboard fixes it, and it's almost insultingly simple: up to nine frames in, one 3×3 sheet out. That sheet goes into your next shot as a reference picture, so the model can look at the place it's supposed to be standing in. It's the 2026 consistency trick - stop injecting identity, hand the model a reference and let it look (character-consistency.md) - applied across cuts instead of across portraits.

Two things up front: it's an internal node, built for you by the pack's timeline when the Storyboard pill is on, so most people never place it by hand; and it's H3-only today, since on LTX 2.5 the pack already lays references onto one sheet.

What it does, mechanically

It's a compositor, not a sampler. Frames arrive per source, already chosen, and it lays them out on black in play order - left to right, top to bottom. Each frame is fitted whole into its cell and letterboxed, never cropped - cropping a reference silently decides its framing.

When the timeline drives it, the interesting decisions are upstream. Cells are allotted by how long each earlier shot plays (largest remainder, never zero, most recent shots kept when there are more shots than cells), and each source's frames are pulled from the centres of even bins across that pass - so nine cells of a ten-second shot are nine moments inside it, not the first and last frame the seam already hands over. The sheet is built at the generation's own canvas (1344×768 is H3's native) so the reference encoder downsamples it once instead of twice, then cited as the shot's last picture reference with a prompt line saying what it is, how to read it, and that the grid itself is never to be drawn.

The inputs and output that matter

  • width / height - the sheet's canvas. Defaults 1344×768; leave them.
  • frames_1 … frames_9 - optional IMAGE. Each is a source, not necessarily one frame: a batch contributes many. The node flattens everything wired, in order, and takes the first nine.
  • IMAGE out - one picture, [1, H, W, 3], not a batch. In the pack it feeds the H3 Segment node's storyboard_image; standalone it goes wherever a reference image goes, or into a Save Image if you just want the sheet.

Wire nothing and it raises a storyboard needs at least one pass to draw on.

Installing it

Same as the rest of the pack. Manager, search ComfyUI-Continuity, or:

cd ComfyUI/custom_nodes
git clone https://github.com/roadmaus/ComfyUI-MiniMax-Creator

Restart. Nothing to pip install. The node is flagged dev-only, so if your build hides dev-only nodes you'll need that setting on to place it by hand. Otherwise use the timeline's pill.

One trap, and it's the pack's: it was renamed from MiniMax Creator, and the node ids stayed the same so old workflows load. A second copy cloned beside the old folder means two packs registering the same ids and no nodes at all in the search. Have both? Delete one and restart - presets live in ComfyUI's user/ directory, not in either folder.

Where people get burned

The sheet isn't free. It takes one of H3's nine picture slots, so a shot already citing nine references is refused by name. A shot shown a sheet is a reference generation, so it runs on the reference checkpoint whatever else it carries. And the dependency is real: edit shot 1 and every shot shown a sheet of it re-renders, where a hard cut used to keep its cache.

Composition is the one that surprises people. The sheet holds the camera as firmly as it holds the room, so a shot written as a reverse angle or a close-up of the shots it sees comes back framed like them. Telling the model to ignore the sheet's framing does nothing - the pull is in the picture. If a shot needs an angle the earlier shots don't have, turn the storyboard off on that seam's chip, or show it only a shot that has that angle. And take the pack's measurement seriously: the piece so far holds the place as well as the shot before it, while keeping one bad shot to a single cell among nine instead of the whole sheet.

Last thing: don't name an attached file storyboard - that handle belongs to the sheet the timeline makes.

CategoryContinuity/internal

Inputs (11)

NameTypeDefaultDescription
widthINT134464–16384
heightINT76864–16384
frames_1optIMAGE
frames_2optIMAGE
frames_3optIMAGE
frames_4optIMAGE
frames_5optIMAGE
frames_6optIMAGE
frames_7optIMAGE
frames_8optIMAGE
frames_9optIMAGE

Outputs (1)

NameTypeDescription
IMAGEIMAGE