Pop Axis Force

The Ultimate Houdini node reference

Visit the Node Bible

To learn more, please log in or sign up for free to explore the Node Bible.
Write your awesome label here.

Pop Axis Force

Write your awesome label here.

The Pop Axis Force allows you to apply a force which travels around an axis

Drag to resize


    If you want particles to spin around something, then the Pop Axis Force might be the node you're looking for.    Step 1:  Define the shape that you want to use for orbit...  Step 2:  Set up the proper Orbit/Lift/Suction Speed... Step 3:  Dial in a falloff for the outer edges.

Drag to resize

Main Parameters:


-  Allows you to isolate the pop axis force based on groups.  For more information about groups, check out the Group Node Bible Entry.


--  This shows you what the orbit geometry looks like in the viewport.


--  Type = Torus or Sphere

--  Center = where the control geo is located

--  Axis Direction = how the control geo is rotated

--  Radius = How wide should the control geo be?

--  Height =  How far up should it be stretched in its relative y direction?

--  Use Vexpressions =  You can control the above parameters using vex if you'd like to with this option.


--   Orbit Speed =  If using a sphere, then how strongly should it try to orbit around the sphere?  If using a torus, then how strongly should it try to spin around the surface of the torus?

--  Lift Speed =  If using a sphere, then it will push upwards in the object's y direction.  If using a torus, it will push the particles in the direction of the torus loop.

--  Suction Speed =  This keeps the particles from escaping the control object.  If a sphere, then it pushes it towards the center.  If a torus, then it will push it towards the center of the torus.

--  Use Vexpressions = Allows you to control any of the above parameters using vex.  Only applies to parameters within this tab.

Fall Off:

--  Soft Edge =  Start by taking a look at the edges of the torus or sphere.  If particles are further than ___ distance away from the center, the intensity of all forces begins to transition from the inner to outer strength regions.  The Soft Edge number is this distance from the center.

--  Inner Strength = This acts as an overall scale to the forces being applied to the particles within the control objects before they hit the soft edge radius.  

--  Outer Strength = Once particles go past the soft edge distance, what should the strength of all the forces be?  This outer strength will act as a multiplier.

--  Use Vexpressions =  Allows you to adjust the above parameters using vex.  Only affects things in the falloff tab.


--  Ignore Mass =  Do not use @mass to affect how much the particles get pushed by these forces

--  Treat as Wind =  Rather than causing the particles to get faster and faster, it tries to reach a target speed.  If you leave this on, it will prevent the particles from getting faster and faster without limit.  If you turn this off, then the particles just get faster with each step.

--  Air Resistance =  How quickly should particles reach the target velocity?  If you turn up the air resistance, then it will cause the particles to reach the target faster.  PRO TIP!  If you're having a problem with keeping your particles contained within the guide geometry, try turning up air resistance rather than increasing the suction force.

--  Use Vexpressions =  Allows you to modify things in the Behavior tab using vex

Drag to resize


    Bindings can be used to tell which nodes are allowed to work with each other.  Nodes which belong to the same geometry name are allowed to work with each other.

    As an example, if you set the binding on a pop source to "goobie" and leave everything else at its defaults, no other node in your dop network will want to work with the popsource because they have a different binding name.  If, however, you go to your solver and change its binding to "goobie" as well - now the pop solver will work with the pop source node.  Lastly, if you set a pop force's binding to "goobie", that will now allow the pop force to interact with the pop source node.  NOTE:  Global forces (ex: the Gravity DOP) do not feature any bindings and will work on all data within the dop network.

Drag to resize


    This section deals with a situation which you might run into while using vexpressions.  In vex, you must specify which input to access data from for most functions.  This means 0 = first input 1 = second input, and so-on.  In DOPs, you don't have the ability to plug into those inputs.  Instead, you specify where that data comes from here in the input tab.

Take this example:  Let's say that you want to access a point attribute from the geometry that's plugged into the first input of your dop network.  You could say something like this:  

v@myAttribute = point(0,"Cd",44)

This function can translate to - "I'm looking for a point attribute, read this data from geometry input #0 (which corresponds with input 1 in the inputs tab), I'm looking for an attribute called "Cd", and I want to read this attribute from point #44."

And then, within the Input tab, you can say that the first input argument (which is 0) corresponds to the first context geometry.