Parallax Motion Parameters Generator
Preset-driven front/back motion ranges for 2.5D parallax
- front_x_min
- front_x_max
- front_y_min
- front_y_max
- front_z_min
- front_z_max
- back_x_min
- back_x_max
- back_y_min
- back_y_max
- back_z_min
- back_z_max
Don't confuse this with OPCScheduler in the same category tree - despite the similar name and neighborhood, Parallax Motion Parameters Generator does something much simpler. It doesn't produce a per-frame schedule at all. It's a preset picker that spits out a min/max motion range for a two-layer (front/back) parallax setup, so you don't have to type twelve numbers by hand every time you want a "pan left to right" or "zoom in" effect.
How it works
This pack's team demoed parallax motion as their flagship feature at launch, and the two-layer front/back split here is the simplest version of the same idea OPCScheduler generalizes to N layers: your foreground content and background content each get their own motion range, and the front layer typically moves more than the back layer for the depth illusion to read. Instead of hand-writing those ranges, pick zoom_preset and horizontal_pan_preset / vertical_pan_preset from dropdowns - "Zoom In," "Pan Left → Right," and so on - and the node fills in sane min/max pairs. Set any preset to "Custom" to unlock manual control, or "Select Random" if you just want some motion and don't care exactly what.
The inputs and outputs that matter
zoom_preset(7 choices: None, Zoom In, Zoom Out, Zoom In/Out, Zoom Out/In, Custom, Select Random).horizontal_pan_presetandvertical_pan_preset(9 choices each, independent of one another - combine "Zoom In" with "Pan Left → Right" for a diagonal push, for instance).custom_x_min/max,custom_y_min/max,custom_z_min/max- only matter when a preset is set to "Custom"; otherwise leave them.parallax_intensityandzoom_intensity(default 1) - global multipliers on however aggressive the chosen preset's motion is. Turnzoom_intensitydown if "Zoom In" punches in too hard.
Twelve FLOAT outputs, split front_x_min/max, front_y_min/max, front_z_min/max and the same three pairs for back_*. Wire front_* into your foreground layer's transform and back_* into your background layer's.
How to install it
ComfyUI Manager: search SaltAI-Open-Resources or SaltAI, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/get-salt-AI/SaltAI
then restart. No model, no heavy dependency.
Common issues & troubleshooting
Motion looks flat or nonexistent. Check zoom_preset and both pan presets aren't left on "None" (the default) - a very common oversight since None is what the node opens with. Also check parallax_intensity / zoom_intensity aren't sitting near zero.
Custom preset does nothing. If you set a preset to "Custom" but left custom_x_min/max etc. at their defaults (0/0/1/1), you'll get essentially zero motion on that axis - those fields only populate meaningfully once you type real values in yourself; nothing derives them from the preset dropdown once you've switched to Custom.
Front and back layers move identically. That defeats the whole point of parallax - check that your foreground transform node is actually consuming front_* and your background one is consuming back_*, not both wired to the same set by mistake.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| zoom_preset | COMBO | None | 7 options: None, Zoom In, Zoom Out, Zoom In/Out, Zoom Out/In, Custom, +1 |
| horizontal_pan_preset | COMBO | None | 9 options: None, Pan Left → Right, Pan Right → Left, Pan Left → Center, Pan Right → Center, Pan Center → Right, +3 |
| vertical_pan_preset | COMBO | None | 9 options: None, Pan Up → Down, Pan Down → Up, Pan Up → Center, Pan Down → Center, Pan Center → Up, +3 |
| custom_x_min | FLOAT | 0.00 | — |
| custom_x_max | FLOAT | 0.00 | — |
| custom_y_min | FLOAT | 0.00 | — |
| custom_y_max | FLOAT | 0.00 | — |
| custom_z_min | FLOAT | 1.00 | — |
| custom_z_max | FLOAT | 1.00 | — |
| parallax_intensity | FLOAT | 1.00 | — |
| zoom_intensity | FLOAT | 1.000.1–10 | — |
Outputs (12)
| Name | Type | Description |
|---|---|---|
| front_x_min | FLOAT | — |
| front_x_max | FLOAT | — |
| front_y_min | FLOAT | — |
| front_y_max | FLOAT | — |
| front_z_min | FLOAT | — |
| front_z_max | FLOAT | — |
| back_x_min | FLOAT | — |
| back_x_max | FLOAT | — |
| back_y_min | FLOAT | — |
| back_y_max | FLOAT | — |
| back_z_min | FLOAT | — |
| back_z_max | FLOAT | — |