Quick answer: Spawn block needs Velocity input. Compute as Position - PreviousPosition each frame. Set Rate Per Unit ~10 for trails.
Trail effect attached to a player. Player runs. Trail empty. Spawn Over Distance is reading zero velocity because the emitter is local to the player.
The Fix
VFX Graph:
Spawn Context:
Spawn Over Distance:
Rate Per Unit: 10
Velocity: [Vector3 input from C#]
C# driver:
Vector3 _prev;
void Update() {
Vector3 v = (transform.position - _prev) / Time.deltaTime;
vfx.SetVector3("Velocity", v);
_prev = transform.position;
}
Or use VFX Property Binder (Position component) which auto-computes per-frame movement.
Verifying
Move emitter. Particles spawn at Rate Per Unit per meter. Stop moving: emission stops. Resume: continues.
“Velocity wired. Distance accumulates. Trail emits.”
Related Issues
For VFX particle strip, see strip collapse. For VFX mesh flat, see flat shading.
Velocity in. Distance flows. Trail draws.