Nodes/Difforum/Difforum · Animatic (previz)
ComfyUI Node

Difforum · Animatic (previz)

See the Whole Camera Move in One Second, Before You Render Anything

By chillithebillis·Created 4 months ago·Updated 11 days ago· 10
Difforum · Animatic (previz)
  • direction
  • init_image
  • depth
  • key_images
  • frames
  • fps
  • info
◄preview_scale0.40►
◄overlaytrue►
◄key_indices—►

In film, an animatic is the rough cut of a shot - stick figures and a timecode - that exists so nobody burns a day of production on a camera move that doesn't work. This node is that, and it's the single most useful 30 seconds you can spend in the Difforum workflow.

What it does

It takes the Director's camera and plays it over your first frame at reduced resolution (preview_scale 0.4 by default), then burns the timecode, active scene prompt, camera move, energy bar and keyframe markers over the picture. On a modest GPU you get a full previz in about a second. The tooltip is honest about the trade: 0.4 is small and instant, 1.0 is full size.

It runs the same camera engine the Feedback Sampler and the video-model bridges use. That's the whole point. The move you approve here is the move you render, not an approximation you drew somewhere else.

The inputs that matter

  • direction (required) - the Director's wire. Everything visual comes from it.
  • preview_scale and overlay - how small, and whether the HUD is burnt in. Turn overlay off when you want a clean pass; leave it on when you're checking that keys land where you think they do.
  • init_image - your first frame. Leave it empty and you get a synthetic gradient plate with a grid and a ring, which is honestly the right choice when you're blocking a move, because you can see exactly what the camera is doing instead of guessing from a photo.
  • depth - depth of that first frame, for real parallax in 3D mode.
  • key_images / key_indices - the pictures you pinned with Keyframe Images show up at their moments, so you can see a beat hit before it costs you anything.

Outputs

frames (an IMAGE batch), fps and info. Send frames + fps into Create Video and a Save Video node. The info string is a one-line summary - frame count, resolution, warp mode, key count, duration - handy to keep in the graph as a printed receipt.

The fps output lines up with the Setup params so your video combine doesn't produce a 24-fps previz at 8 fps.

Install

ComfyUI Manager → search "Difforum", or clone it yourself:

cd ComfyUI/custom_nodes && git clone https://github.com/chillithebillis/Difforum.git difforum

Restart ComfyUI. No model downloads and no Python dependencies beyond numpy; the overlay drawing uses Pillow, which ComfyUI already ships.

Doing it the intended way

Every template has a Previz only button on the Director. Click it and the render outputs get muted, so Queue runs the previz and nothing else. Click it again to un-mute and render. That's the loop the author designed: draw, previz, adjust, render. If you're iterating a 30-second shot, this is the difference between a two-minute and a two-hour feedback cycle - and with 48 threads a month still mentioning Deforum, most of the people doing this are doing it the slow way.

Where people get burned

Two things. First, a previz is not a render: the animatic warps your still, it doesn't diffuse anything, so the picture won't show you what the model is going to invent in the revealed areas. It shows you motion, which is all it claims to do.

Second, keep preview_scale low while you're deciding. At 1.0 with a long clip you've quietly turned your instant preview into a real render of a warp, and the whole ergonomic advantage evaporates. Nudge it up only when you're checking a fast move for tearing.

CategoryDifforum/2 · Direction

Inputs (7)

NameTypeDefaultDescription
directionDIFFORUM_DIRECTIONThe Director to previz.
preview_scaleFLOAT0.400.1–1Size vs. Setup. 0.4 = small and instant; 1.0 = full size.
overlayBOOLEANtrueBurn in timecode, camera move, scene prompt, energy bar and key markers.
init_imageoptIMAGEFirst frame to move over. Empty = a grid plate.
depthoptIMAGEDepth of the first frame, for real parallax in 3d mode.
key_imagesoptIMAGEKeyframe Images: shown at their moments.
key_indicesoptSTRINGTheir frame numbers.

Outputs (3)

NameTypeDescription
framesIMAGE—
fpsFLOAT—
infoSTRING—