Houdini 16.5 Nodes Particle nodes

Velocity Stream POP node

Emits a stream of evenly-spaced particles from geometry.

On this page

This POP emits particles from the points of its Geometry Source. However, unlike the Source POP, this POP does not make use of birth rate parameters. Instead, it determines when to emit particles based on the velocity of emitted particles. The timing of emission is controlled in order to maintain a specified spacing between particles in the emitted stream. Currently, this POP is used for emission of fluid particles in the Particle Fluid Emitter DOP.


To set particle attributes on the points of the emitter geometry (so the emitted particles inherit them at birth), connect a Point SOP to the emitter SOP and use the attributes on the Particle and Force tabs.


A POP automatically adapts to the sop-space of the object it is cooking from, just as if it had a built-in Object Merge SOP. To over-ride this behavior, turn on the Ignore Transform Object parameter.


A detail attribute is added to record the last emission time. The name is the full path to this node, so will not interfere with other velocitystream nodes. However, if the same GDP will be reused for another simulation starting at another time, this detail attribute should be deleted with an Attribute SOP.



Geometry Source

Specifies the SOP to use.

Use Parameter Values

Use the SOP specified in the SOP parameter below.

Use First Context Geometry

Use the SOP connected to the POP network’s first input.

Use Second Context Geometry

Use the SOP connected to the POP network’s second input.

Use Third Context Geometry

Use the SOP connected to the POP network’s third input.

Use Fourth Context Geometry

Use the SOP connected to the POP network’s fourth input.


Path to the SOP (when Geometry source is set to Use Parameter Values).

Ignore Transform Object

Particles normally use the object space of the SOP being cooked. Turn this parameter on to not transform into the space of the cooking SOP.

Source Group

Subset of all points/primitives in the source geometry to emit from.


Stream Activation

Enables/disables particle emission from this node.

Stream Spacing

Controls the spacing between particles in the emitted stream. This is done by regulating the times at which particles are emitted. For example, if the velocity of emitted particles is set to 1 in the x direction, and the Stream Spacing parameter is set to 1, then particles will be emitted from each point in the Geometry Source every 1 second in order to maintain the desired spacing.

Stream Acceleration

This parameter does not affect the behavior of particles once they are emitted, but rather affects the timing and direction of particle emission. It is used to regulate the timing of particle emission in the presence of external forces accelerating the particles. For example, if particles are emitted with no velocity, but are immediately affected by a downward gravity force, then the acceleration caused by that force could be specified here.

Stream Velocity Scale

This parameter is a multiplier which controls the velocity used to determine the timing of particle emissions. It does not affect the actual velocity of emitted particles, but rather can be used to internally scale the emission velocity to thicken or thin out the emitted particle stream.

Birth Group

Name of a group to put the new points into.

Preserve Group

If the Birth group already exists, append the new particles to the group instead of replacing its contents.

Life Expectancy

How long the particle will live (in seconds).

Life Variance

Particles will live the number of seconds in Life expectancy, plus or minus this number of seconds. Use 0 for no variance.

Accurate Births

Recook source geometry before emission of each particle.

This ensures particles are emitted from the correct location when the source geometry is animated. If the shape of the source geometry does not change, you should turn this option off.


Inherit Attributes

A list of names/patterns of attributes to inherit from the source geometry.

Create Local Variables

Create local variables corresponding to inherited attributes.

Initial Velocity

How to set the initial velocity of the emitted particles.

Use inherited velocity

Use the inherited velocity attribute as the initial velocity of the particles.

Add to inherited velocity

Add the inherited velocity attribute to the values from the Velocity and Variance parameters below.

Set initial velocity

Set the initial value of the velocity attribute using the Velocity and Variance parameters below.


Acceleration is inherited independently, if applicable.

Inherit Velocity

(When Initial velocity is Use inherited velocity or Add to inherited velocity) The proportion of the inherited velocity to use. Use 1 for the full inherited value, 0.5 to half the inherited value, and so on.

Impulse Activation

Turns impulse emission on and off. Impulse emits the number of particles in the Impulse birth rate below each time the operator cooks. A value of 0 means off, any other value means on.

Impulse Birth Rate

Number of particles to emit each time the node cooks (when Impulse activation is on).

Const. Activation

Turns constant emission on and off. Impulse emits the number of particles in the Constant birth rate below each second. A value of 0 means off, any other value means on.

Const. Birth Rate

Number of particles to emit per second (when Constant activation is on).


Set or add to velocity attribute.


Variance to velocity set above. The node will add +/- from 0 to this number along each axis to the Velocity parameter.

Ellipsoid Distribution

By default, the variance (if any) is distributed in a box, the size of which is determined by the Variance parameter. When this option is on, the variance is distributed in an ellipsoid instead.

Add Attributes

The parameters on this tab let you control which and how attributes are initialized on the emitted particles. See the POP locals page for explanations of these variables.

Add ID Attributes

Add ID and parent attributes to the created particles.

Add Generation Attribute

Add the generation attribute to the created particles.

Add Origin Attribute

Add the origin attribute to the created particles. The origin attribute holds an arbitrary number that can help you identify the source of a particle.

Origin Index

Value for the origin attribute (when Add origin attribute is on).

Add Speed Attribute

Add speed attribute. In Houdini, the speed attribute is the length of the velocity vector.

Use as Origin

Controls what Houdini sets as the value of a particle’s origin attribute (the identity of the geometry that emitted the particle). This lets you distinguish the origin of a particle later.


Set the origin to the value of the Origin index parameter below.

index + geo num

Sets the hit ID to the value of the Origin index parameter, added to the number of the geometry operator the particle was emitted from.

Typically, you would use large steps for the Origin index parameter (hundreds or thousands) so you can still distinguish different origins after the geometry number is added.

For example, you could have two Source POPs with origin index settings of 100 and 200. When the Source POP adds the geometry number to the origin index, you would get origins like 101, 102, 205, 210, and so on. As long as there is no geometry number larger than 99, you can still distinguish the different POPs.

Origin Index

Number to use as the origin of emitted particles. This lets you distinguish different origins.


These variables refer to the source geometry’s properties.


The point’s relative position in the bounding box.


Point or vertex alpha value.


Diffuse point or vertex color.


Distance from particle to last collision.


Point drag.


Processing iteration number.


Texture coordinates.


Point mass.


Number of particles.


Total number of points.


Total number of primitives.


Total number of points in source group.


Normal vector.


Source point.


Particle Scale.


Non-uniform scale.


Absolute speed of particle.


Elasticity of a point.


Spring tension.


Time increment.


Point position.


Up vector.


Surface UV values.


Velocity direction.


Point spline weight.

See also

Particle nodes