Ink-in-water smoke that swirls along the motion in a video, hypnotic, endlessly looped, very save-able. It works by reading optical flow (which direction each pixel is moving) from footage or a webcam, then pushing particles along that flow. Move, and smoke trails follow you.
Watch the trend
1. Get the Flow Field
- Add a Video Device In TOP (webcam) or a Movie File In TOP.
- Add an Optical Flow TOP. Its output encodes motion direction and speed as colour (a velocity field): red/green channels are X/Y movement.
- Smooth it with a small Blur so the field is not noisy.
What optical flow gives you
Every pixel gets a little arrow saying “this is moving up-left, fast.” That arrow field is exactly what you need to steer particles or smoke.
2. Drive the Smoke (two ways)
A) Feedback smoke (no particles, pure TOPs):
- Build a Feedback TOP loop holding a “density” image.
- Each frame, displace the fed-back density by the optical-flow velocity (a GLSL or Displace TOP), then fade slightly.
- Inject density where there is motion. The result smears and curls like smoke.
B) GPU particles:
- Use a ParticlesGPU / POP system.
- Sample the flow field at each particle’s position and add it to the particle velocity.
- Particles stream along the motion, leaving trails.
Start with A: it is fewer nodes and reads as smoke immediately.
3. Make It Beautiful
- Run the density through a Lookup TOP gradient (smoke white, or ink blue to violet).
- Add bloom and a gentle Blur so it glows and softens.
- Slightly zoom the feedback each frame for a drifting, rising-smoke feel.
4. Loop and Post
- For a seamless loop, drive motion from a looping clip rather than a live cam.
- Output 1080x1920, record 10 to 20 seconds.
- Calm, slow footage gives the most elegant smoke; fast motion gives turbulent bursts.
Troubleshooting
- “The flow is just noise.” - Blur the input and the flow output; raise the Optical Flow smoothing. Good lighting reduces false motion.
- “Smoke builds up and whites out.” - Increase the per-frame fade (multiply density by ~0.96) so it dissipates.
- “It looks flat.” - Add the feedback zoom and a colour gradient; flat grey density never looks like smoke.
Parameter Tuning & Behavior
| Parameter | Behavior |
|---|---|
| Flow strength | Higher = violent swirls; Lower = lazy drifting smoke. |
| Density fade | Closer to 1 = thick lingering smoke; Lower = wispy, quick-clearing. |
| Feedback zoom | Higher = fast rising/expanding; Lower = settled, hovering. |
| Input blur | Higher = smooth elegant flow; Lower = detailed but jittery. |
Network Architecture
[ SOURCE ] [ Video Device In / Movie File In TOP ]
│
▼
[ MOTION ] [ Optical Flow TOP ] (velocity field) ──▶ [ Blur ]
│
▼
[ SMOKE ] ┌──▶ [ Displace by velocity (GLSL) ] ──┐
│ (+ inject density at motion) │
└──────── [ Feedback TOP ] (fade ×0.96, slight zoom) ◀┘
│
▼
[ COLOUR ] [ Lookup TOP gradient ]
│
▼
[ OUT ] [ Bloom ] ──▶ [ Blur ] ──▶ [ OUT 1080x1920 ](y) Return to Trending 2026 | (y) Return to Recipes & Projects | (y) Return to TouchDesigner | (y) Return to Home