Difforum · Camera Move (presets)
The honest starting point for Difforum camera work
- params
- audio
- camera
- info
If the full Camera (advanced) node is Deforum's engine bay, Camera Move (presets) is the friendly driver's seat bolted on top. Instead of writing rotation_3d_y: 0:(0.5*sin(2*pi*t/120)) from memory, you pick spiral (or zoom_in, orbit_right, roll_cw, and a dozen more), set speed and intensity, and get the same DIFFORUM_CAMERA output the advanced node produces - generated internally from the exact same preset schedules, minus the typing.
This is the node the README routes beginners through ("intuitive nodes") and it earns that label. The 18 presets cover the emotional range of Deforum camera work: still for the pure-feedback look, zoom_in/zoom_out for the classic psychedelic breathing, dolly_* for real spatial moves, pan_* and orbit_* for orientation, roll_cw for dutch-angle energy. The last category - spirals - is where Deforum lives: a spiral is rotation + zoom + translation combined, and it's one dropdown entry here instead of three expressions.
Inputs to care about:
preset- the move. The full list is in the dropdown; the brief's sample showsspiralas default.speedandintensity(both default 1.0, range 0–10) - the two dials. Speed is rate, intensity is amplitude; crank both together for a hyper clip or drop intensity to 0.3 for a whisper of motion. Because they're separate, "fast but subtle" is actually expressible.mode-2dor3d. Same rule as everywhere in this pack: 3D only pays off when a depth map reaches the warp downstream. Start in 2d.fov- 40 by default, static for the clip here.audio(optional) - the sameDIFFORUM_AUDIOsocket as the advanced node. Connect it and the preset's axes can reference audio curves, so your spiral tightens on the beat.
Outputs: camera (feeds the Feedback Sampler, Guide Builder, or Live Sampler) and info - a text summary listing which axes are actually active for that preset, which is quietly educational the first time you realize pan_left drives a different axis than zoom_in.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/chillithebillis/Difforum.git difforum
Restart ComfyUI (look for [Difforum] loaded N nodes) or use ComfyUI Manager → "Difforum". numpy-only, no extra deps.
Common issues
- "I picked 3d and nothing moved." The universal Difforum gotcha, repeated here: 3D axes produce no motion without a depth map reaching the warp. If your clip is a static frame in 3d mode, either connect depth or switch to
mode=2d. - Preset feels too slow/fast regardless of speed. Remember
intensityis the amplitude axis - a spiral atspeed=2, intensity=1differs fromspeed=1, intensity=2in feel, not just magnitude. Dial both. - Defaults are conservative.
spiralat 1.0/1.0 is gentle. If the promo GIFs are what you want, you'll be at speed 1.5–2. That's normal, not a bug.
It's not the most impressive node in the pack - no fancy math, no timeline - but it's the one that gets you your first moving render in five minutes, and it produces a perfectly valid camera track you can swap for the advanced node later without touching anything downstream. That's the right kind of on-ramp.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| params | DIFFORUM_PARAMS | — | |
| preset | COMBO | spiral | 18 options: still, zoom_in, zoom_out, dolly_in, dolly_out, pan_left, +12 |
| speed | FLOAT | 1.00–10 | — |
| intensity | FLOAT | 1.00–10 | — |
| mode | COMBO | 2d | 2 options: 2d, 3d |
| fov | FLOAT | 401–170 | — |
| audioopt | DIFFORUM_AUDIO | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| camera | DIFFORUM_CAMERA | — |
| info | STRING | — |