Vector Motion Blur
Synthesize motion blur by smearing an image along a per-pixel flow vector field — the classic flow-based application of Optical Flow.
Category: Effects Menu path: Effects > Vector Motion Blur
This is distinct from the layer-level Motion Blur toggle — that one does temporal supersampling during rendering (shutter simulation on animated content). Vector Motion Blur applies in 2D image space using an externally-computed flow field, useful for footage that was captured without sufficient motion blur.
Ports
| Port | Type | Direction | Description |
|---|---|---|---|
in | imageRgba16f | input | Color image to blur |
flow_in | imageRgba16f | input | Flow field (typically OpticalFlow.out). R=u, G=v in fractional UV per frame. |
out | imageRgba16f | output | Motion-blurred image |
Parameters
| Param | Type | Default | Description |
|---|---|---|---|
strength | scalar | 1.0 | Flow magnitude multiplier. 1.0 = use flow as-is; 2.0 = doubled motion blur; 0.5 = half. |
phase | scalar | 0.0 | Blur window position along the flow. −1 = leading (blur in front of pixel), 0 = centered (standard 180° shutter look), +1 = trailing (blur behind pixel — "afterimage"). Clamped to [−1, 1]. |
samples | scalar | 16 | Samples along the blur axis. More = smoother, quadratically more GPU cost. Clamped 1-64. |
How It Works
For each output pixel, Vector Motion Blur:
- Reads the flow vector at the current UV from
flow_in.rg. - Multiplies it by
strengthto get a world-space motion vector. - Samples
inatsamplespoints distributed along that motion vector (spanning[-0.5 + phase*0.5, 0.5 + phase*0.5]of the flow magnitude). - Averages the samples.
Result: pixels smear along the direction they moved. Fast-moving areas get heavy blur; stationary areas stay crisp. Matches how real-world motion blur looks.
The phase param controls whether the blur trails behind the motion (like a camera shutter that opens late — leaves an afterimage), leads ahead of it (opens early — ghostly anticipation), or is symmetric (standard photographic motion blur).
Usage Examples
Standard motion blur on video footage
VideoSource ──► OpticalFlow ──► flow_in
VideoSource ──────────────────► in ──► VectorMotionBlur (strength: 1.0, phase: 0) → OutputClassic application — video with insufficient natural motion blur gets synthesized blur. Default strength=1.0 gives "as-captured" motion amount; bump to 2.0-3.0 for a dreamier look, or down to 0.3-0.5 for subtle smoothing.
Exaggerated motion for stylized shots
Raise strength to 3-5 for streak-style motion. Good for sports highlights, action sequences, music video beats.
Leading/trailing afterimage effect
phase = 1.0 gives a trailing blur that looks like a photographic afterimage or a slow-shutter shot — often used in dance/performance footage.
Motion-driven brushstroke effect
Apply to a still image with an artificially-constructed flow (e.g. Noise.vectorField → ImageSample → VectorMotionBlur) to get a painterly directional blur without needing video.
Partial blur via mask
Not built-in, but achievable via Mix: VectorMotionBlur → Mix (mask: alpha mask) ← Source. Areas in mask get blurred; areas outside stay crisp.
Tips
- Pair with OpticalFlow smoothness tuning: if the blur looks jittery, the source flow is too noisy. Raise OpticalFlow's
smoothnessto 20-50. - Samples vs strength tradeoff: high strength needs more samples to look smooth. Streaked look at 5× strength: bump samples to 32-64.
- Phase for temporal feel: centered phase looks "natural"; trailing phase feels slower/more languid; leading phase feels anxious/anticipatory. Match to the shot's emotional tone.
- Zero-motion areas are crisp automatically: pixels where flow is zero get no blur, so static elements in otherwise-moving footage retain sharpness.
- Strength below 1.0 is valid: useful for "took too much motion blur naturally, want to reduce it" — can't fully undo, but the apparent motion softens.
Related Nodes
- OpticalFlow — the canonical flow source
- Blur — isotropic blur without direction
- UVRemap — another flow consumer, but for displacement rather than integration
- ChromaticAberration — another per-pixel directional effect
- Mix — blend blurred + original for partial strength