Houdini 19.0 Particles in Dynamics

Swirling particles around vortex filaments

Swirls particles based on the simulated drift of “filaments” represented by polylines.

On this page


Vortex filaments are a way to simulate a fluid using particles. It models internal velocity using polygonal curves represent vortex centers, instead of storing velocity on a grid. Since the vortex filaments control the fluid motion, you can increase the number of particles without affecting the fluid’s behavior.

You can use the filament workflow to create the look of intricate fluid motion, such as cigarette smoke. The filament particle simulation is not necessarily realistic, but can create certain specific effects much faster than a full high-resolution fluid simulation, and with more artistic control.

Filaments are closed polylines (polygonal curves) that represent vortex forces. The general filament setup works like this:

  1. Create a geometry network to create the filament geometry.

  2. Import the filament geometry into the simulation network using the Source Filaments node.

  3. The Filament Solver node advects the points of the filaments to make them drift through space.

  4. While the Filament solver moves the filaments, the POP Advect by Filaments node applies vortex forces to surrounding particles, making them swirl around nearby filaments.


Since it’s just polylines and particles, you could also experiment with different starting filament geometry, filament size, filament velocity attributes, and different particle treatments, to see what kind of weird effects they create. This might be useful, for example, to create the look of a magic spell or alien device.

Using Vortex Filaments

The Vortex Filaments shelf tool creates a filament rig using the Source Filaments, POP Advect by Filaments, and Filament Solver nodes.

  1. Create a particle system using the Location or Source shelf tools.

  2. Use a tool such as Circle, Curve, or Draw curve to create closed polylines. These “filament” curves will be the centers of the vortexes in the simulation.

    Make sure you change the Primitive type of the curves to “Polygon”.

    More interesting curves will give more interesting particle motion. For example, if you start with a plain polygon circle, you might want to use the Mountain node to “roughen” the points to create a more interesting curve.

  3. With the curves selected, click the Vortex Filaments tool on the Particles shelf tab.


The Advect by Filaments example demonstrates how to set up a filament geometry network, and how to use the dynamics nodes to create a turbulent smoke effect.

Important parameters

  • Use the Operation parameter on the Source Filaments node to control whether to use the filament geometry network for all filaments (“Replace”) each time it activates, or only the new filaments (“Append”).

  • Use Scale Strength and Scale Thickness on the Source Filaments node to adjust the effect of each filament.


  • Velocity (v) attributes on the points of the filament curves will affect their motion.

  • You can cache the filament simulation to disk as a separate pass and then read it off disk.

See also

Particles in Dynamics

Getting started


Next Steps