Jump to content

Curves to act as loose guidelines for particles

Recommended Posts


I'm trying to setup a particle system so that it folllows loosely all curves nearby. The curves should act as guidelines so to easily reshape the flow of particles and it should even be possible to use spiral curves for vortices like effects.

The idea is that particles should follow the curves along their length and the influence should be proportional to the distance of the particle from the curve.

Ideally it should be possible to use multiple curves and to dose each curve's influence

I came up with a couple of ideas but I was wondering what would be an elegant solution for it.

Thanks a lot for your time :)


Share this post

Link to post
Share on other sites

Here's a simple example file using the Tangent SOP and getting particles to follow a curve.


The Velocity POP uses the tangent attributes to motivate the particles using a user-defined local parameter. There is a second parameter that knocks down the incoming velocity (drag the incoming velocity) and controls how tightly or loosely the particles follow the path.

The Attribute POP is necessary to give the tangent attribute a mapping so that $TANGENT1, $TANGENT2 and $TANGENT3 can be used directly in subsequent POP parameters.

I added an Interact POP to keep them apart but it is unnecessary to get the effect to work. Interact can increase sim times.


Share this post

Link to post
Share on other sites

The tangent attribute that you create using the Attribute POP has to match the tangent attribute created by the Tangent SOP. If you right-click on the Tangent SOP and choose Extended Info, note that the tangent attribute is created as a Vector attribute, not Float[3]. If you change the Attribute POP to be a Vector attribute instead then it will work. Of course, you also now have to fix the expressions to use $TANGENTX, $TANGENTY, and $TANGENTZ instead.

Share this post

Link to post
Share on other sites

Hi guys. This is an old topic, what do you think about translating it to Houdini 16? ;) 
I've been trying to do this for several hours in H16 and I'm stuck. I've been working on a project with particles following a curve (using POP Curve Force and then POP Forces, POP Torque etc), everything fine but now I would like to have particles follow a curve which is turning and bending like crazy. The problem is they "escape" on sharp turns, even when I turn off all other forces (I've attached an image).
I guess POP Curve Force is too simple and doesn't give you controll over that. It works if you have the same amounts of orbit, follow and suction scale but I need them to follow only and then add some noise - no suction or orbit.
How would you go about doing this in POPnet? I found your examples in the old particle system (however the particles still don't stick perfectly to the path there - you can see them going away a bit on turns - which is physics I guess), tried to translate them somehow to the new system, but I know to little in Houdini. Here's my example/test file:
I've included a POPVop attempt in the file which I think is the way to translate the old system to the new one, but I can't figure out how the particles should "inherit" the normals/velocity from the curve, along the curve.
Thanks for any help.


Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now