VecFlow0.1.0
Effects guides

Following curves and forming shapes

Particles that run along a path, spiral round it, and fly in to form a logo, a word or a mesh, on cue; a logo reveal start to finish.

VecFlow 0.1.0

Two operators take particles where you want them: Follow Curve along a path, and Goal to spots on a shape. Both are choreography more than physics: particles go where they're told, and arrive when they're told.

Along a curve

Draw a curve (a Bezier or NURBS curve, text, or hair curves) and give an event a Follow Curve on it.

A flow of 2 events. Along: Birth, Position, Follow Curve; Follow Curve: Wire, 2 m/s sends to Off the End. Off the End: Gravity, Collide, Delete.AlongFollow Curve: Wire, 2 m/sBirth: 50 per frame from 1. Make new particles: some every frame, all at once, one on each vertex of an object's mesh (for cloth and ropes: bind them with Bind, Mesh Edges), one on each piece of it (to smash: glue them with Bind, Pieces), or the event's Liquid filling itBirth: 50 per frame from 1Position: Wire, random. Place new particles in an object's box, on its surface or inside it, or along a curve (a tube round it)Position: Wire, randomFollow Curve: Wire, 2 m/s. Particles go along a curve, text or hair curves object at a speed, keeping how far off it they were as they entered (more or less as its radius grows or shrinks), turning round it if asked: exactly, through anything, riding it as it moves and bends. Those born along it start from there. Those reaching an open curve's end go along the wire. Steered, they're pushed along it instead, with the event's other forces and collidersFollow Curve: Wire, 2 m/sInOff the EndCollide: groundGravity: 9.81 m/s². Pull particles down, or any way you point itGravity: 9.81 m/s²Collide: ground. Bounce off an object, a collection's objects or the ground, friction slowing their sliding and their spin where they touch. The ones that hit go along the wireCollide: groundDelete: at 1 s since entering. Remove particles at an age (since birth, or since entering this event), or at onceDelete: at 1 s since enteringIn
Sparks born along a wire run to its end, then drop off it and fall.BirthForcesPhysicsLooksTests
  • Born along it: a Position Curve on the same curve places births on it, each starting from its spot. Tube spreads them round it, and On Its Surface keeps them on the tube's skin.
  • Its direction is the way they go: CurveSegmentsSwitch Direction turns it round, or use a negative Speed.
  • Off the end: on an open curve, particles reaching the end go along the wire, carrying on as they went. Loop sends them back to the start instead. On a closed curve they go round and round.

Spirals

Turn Round turns each particle round the curve as it goes, so those off the curve corkscrew round it. Give the Position a Tube, so they start off the curve, and a Turn Round of a few hundred degrees a second.

Exactly or steered

Exactly, they ride the curve through anything, even as it moves and bends, and the event's forces and colliders don't touch them. With Steer, they're pushed along it instead: they swing wide on fast bends, feel gravity and wind, and bounce off things. Steered is for loose streams; exactly is for clean lines.

Sweep: births that draw the curve

A Position Curve with Spread Sweep places births from the curve's start to its end as the Birth goes from its first frame to its last, so the line draws itself on. The Birth must have Stop on, so it has a last frame.

Forming a shape

Goal sends each particle to a spot of its own on a shape (At Surface, Vertices, Curve or Origin), arriving exactly when it's due, slowing to a stop, and staying there, moving with the shape.

  • Arrive At a Frame brings them all in together, give or take Variation, however early or late they set off. After a Time gives each the same time from when it entered.
  • Order Nearest keeps paths short; Random criss-crosses them for a busier swarm.
  • Face Targets turns particles to face as their spots do: shapes on the surface lie flat on it.
  • A Speed in the same event sets how they set off: a burst outward that curls back into the shape.

Morphing one mesh into another

Birth particles On Vertices of one mesh, and give them a Goal At Vertices of another, with Order In Order: each goes to the vertex of the same number. With two versions of one mesh (a shape and a copy you reshaped), every particle lands on its own vertex.

A logo reveal, start to finish

Particles swarm in, form the logo, hold, then blow away.

A flow of 2 events. Swarm: Birth, Position, Goal, Age Test; Age Test: at 4 s since entering sends to Blow Away. Blow Away: Speed, Turbulence, Drag, Delete.SwarmGoal: Logo's surface at frame 60…Age Test: at 4 s since enteringBirth: 20,000 at frame 1. Make new particles: some every frame, all at once, one on each vertex of an object's mesh (for cloth and ropes: bind them with Bind, Mesh Edges), one on each piece of it (to smash: glue them with Bind, Pieces), or the event's Liquid filling itBirth: 20,000 at frame 1Position: Cloud, volume. Place new particles in an object's box, on its surface or inside it, or along a curve (a tube round it)Position: Cloud, volumeGoal: Logo's surface at frame 60, give or take 0.4 s. Particles go each to its own target on an object (its surface, vertices, curve or origin) or on another event's particles, arriving a set time after they enter or all at a set frame, slowing smoothly to a stop on it (turning to face as it does, if asked), and stay there, moving with it. Exactly, through anything: to form a shape, hold it, then go on (an Age Test sends them). Those arriving go along the wireGoal: Logo's surface at frame 60…Age Test: at 4 s since entering. Particles reaching an age go along the wireAge Test: at 4 s since enteringInBlow AwaySpeed: add 2 m/s, spread 1. Set the speed of particles entering the event, along a direction (an object's own axes when given), or add it to how they comeSpeed: add 2 m/s, spread 1Turbulence: strength 5. Push particles around in swirlsTurbulence: strength 5Drag: 0.5. Slow particles to the speed of the air, which moves with the windDrag: 0.5Delete: at 2 s since entering. Remove particles at an age (since birth, or since entering this event), or at onceDelete: at 2 s since enteringIn
Form, hold, release: particles form the logo around frame 60 and hold it; four seconds in, they're blown away.BirthForcesPhysicsLooksTests

Make the logo: a mesh, or a text object as it is. On text, Surface spreads them over the letters' faces and Curve along their outlines.

Make a volume for them to start in: a large cube or sphere round the camera's view. Hide it in renders.

Build the two events above. The Goal's Arrive is At a Frame, 60, with a Variation of 0.4 s, so the logo fills in rather than snapping on.

The Age Test, Since Entering, in the Goal's own event lets them go after four seconds. Until then the Goal holds them on the logo.

In Blow Away, Speed with Add keeps the motion they had (the logo's, if it moves) and puts a burst on top.

Render the logo itself fading in as the particles arrive (a keyframed material), or not at all, so the particles are the logo.

What goes wrong

  • Particles in a Goal or Follow Curve ignore gravity and colliders. As they should: they go where they're taken. Send them to another event to fall. A Follow Curve with Steer feels both.
  • “Can't share an event”. Follow Curve (not steered) and Goal can't sit with Collide, Particle Physics, Bind, Rigid Body, Liquid, Flock or Pin. Put those in the next event.
  • Gaps in the logo. Too few particles for its area: raise the count, or their size.
  • Particles bunch at a curve's points. Curves are read at their resolution: raise the curve's Resolution for an even spread round tight bends.
  • The morph scrambles. The two meshes' vertices aren't numbered alike: make the second a copy of the first, then reshape it.

On this page