Flow Smear

Read with AI
All docs in one file (llms-full.txt)
FlowSmear #Field #Node
Flow Smear

A feedback node that advects the accumulation buffer along a flow field. Every frame it reads the previous frame’s accumulation from the position UV - flow × deltaTime × Strength and mixes it with the live Source using lerp(Source, accumulation, Persistence). The higher Persistence is, the more it trails like paint; at 0 it becomes a passthrough.

  • Strength — Advection multiplier. Clamped to 0-8, default 1 (Strength input / strengthInput / currentStrength)
  • Persistence — Retention rate of the accumulation. Clamped to 0-1, default 0.92 (Persistence input / persistenceInput / currentPersistence)
  • Reset — Trigger input. Repaints the accumulation buffer with the current Source (the Reset button in the node UI does the same thing)

If the Flow input is not connected, the flow is treated as zero (black). No advection happens, and it becomes a time feedback that stays in place.

Removing the Source input schedules a reset, and the output is cleared to black. Right after a project is loaded it likewise starts from the reset state.

The accumulation and the output use a high-precision format (at 8 bit the decaying trail would band). The alpha of the output is always fixed to 1.

Video

Input ports

Port IDType
SourceRenderTexture
FlowFlowFieldInput
Strengthfloat
Persistencefloat
Resettrigger

Output ports

Port IDType
OutRenderTexture

Scriptable members

PathType
strengthInputfloat
persistenceInputfloat
currentStrengthfloat
currentPersistencefloat

Synapse Apps (scripting)

await synapse.modules.create({ type: "FlowSmear" })