(deforum) Translate Parameters
The camera rig of your animation, in schedule form
- deforum_data
- deforum_data
This is the node that gives Deforum its personality. (deforum) Translate Parameters is the camera rig: it defines how the frame zooms, pans, rotates and flies through space across the animation. Every one of those hypnotic Deforum zoom-in-forever clips is this node (plus animation_mode: 2D) doing its thing. It's also the node most people find least intuitive, because the values aren't numbers - they're schedules.
What the schedules are
Each field is a string like 0:(1.0025+0.002*sin(1.25*3.14*t/30)). The format is frame:(expression), where t is the frame number. So 0:(0.65) means "from frame 0 onward, the value is 0.65," and you can keyframe different values at different frames: 0:(1.0) 30:(1.1) 60:(0.9). The expressions are live - t, sin, cos, pi, arithmetic all work, which is where the real magic lives. The default zoom schedule shown above isn't random: it's a slow sinusoidal drift, which is why a stock Deforum graph already feels alive before you touch anything.
The inputs that matter
- zoom - default
0:(1.0025+0.002*sin(1.25*3.14*t/30)). A value above 1 zooms in, below 1 zooms out. The classic Deforum look. - angle - default
0:(0). Rotation in degrees; positive rotates clockwise. - translation_x / translation_y - lateral and vertical pan.
- translation_z - default
0:(1.75). In 2D mode this is effectively a zoom axis; in 3D mode it's real forward/backward camera travel. - rotation_3d_x / rotation_3d_y / rotation_3d_z - the 3D camera rotations, which only do anything when
animation_modeis3Dand depth warping is on. Tilt, pan, and roll through the scene. - transform_center_x / transform_center_y - where the pivot sits (0.5, 0.5 is the frame center). Move it and your zoom orbits a corner instead of the middle.
Output:
- deforum_data - merged into the chain for the Iterator or Integrated Pipeline.
How it works
Like the other (deforum) ... Parameters nodes, this is a DeforumDataBase node: it merges its fields into the shared deforum_data dict, last writer wins. The evaluation of the schedules happens later - in the Iterator's DeforumAnimKeys - which is why t works: by the time the expression runs, t is the current frame. The schedule strings are opaque to the node itself; it just stores them.
Installing this pack
Part of Deforum Nodes by XmYx. ComfyUI Manager: search Deforum Nodes, or:
cd ComfyUI/custom_nodes
git clone https://github.com/XmYx/deforum-comfy-nodes
Restart, let install.py pull the deforum-studio backend plus the scientific-Python stack (numpy < 2.0, Python 3.10 required). Pure plumbing - no model downloads.
Common issues
- Nothing moves. If
animation_modeisNone, the transform schedules are ignored entirely. Also check the schedule expressions actually produce nonzero motion -0:(0)on everything means a static frame. - Syntax errors in the schedule.
frame:(value)must have the colon and parentheses exactly right, and the expression must be valid Python math. A typo shows up as an error when the Iterator evaluates it, not in this node. - Sudden jumps between keyframes. Without interpolation the value snaps. That's sometimes desirable (a whip-pan), but for smooth motion keep expressions continuous or keyframe densely.
- The famous Deforum look. If your zoom seems too weak, remember the product of zoom over 120 frames compounds - small per-frame values become big camera moves. Dial
max_framesandzoomtogether.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| angle | STRING | 0:(0) | — |
| zoom | STRING | 0:(1.0025+0.002*sin(1.25*3.14*t/30)) | — |
| translation_x | STRING | 0:(0) | — |
| translation_y | STRING | 0:(0) | — |
| translation_z | STRING | 0:(1.75) | — |
| transform_center_x | STRING | 0:(0.5) | — |
| transform_center_y | STRING | 0:(0.5) | — |
| rotation_3d_x | STRING | 0:(0) | — |
| rotation_3d_y | STRING | 0:(0) | — |
| rotation_3d_z | STRING | 0:(0) | — |
| deforum_dataopt | deforum_data | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| deforum_data | deforum_data | — |