Jump to content

POP in DOPS little problem


Recommended Posts

Hello all,

I'm studying the Peter Quint's Millions of Particles tutorials on Vimeo.

Well, in the first video he puts particles in DOP simulation and when he hits play, the gravity takes down particles.

I made the same with some little variations about particles, but the rest is similar.

The problem is my particles aren't affected by the gravity!!!

I put a sphere in DOP just to be sure everything is fine, in fact sphere falls, the particles don't!

Could you tell me what I'm doing wrong?

Really thanks in advance.


Link to comment
Share on other sites

Im now looking at your file, but I cant see what you did wrong.

here is simple, working example, that I just created.

SOLVED: same reason as here :D

That curl noise is one nasty thing :D

Just change Velocity Update to No Change, or dont use advection type as Update Position, but particle behavior also changes.

Check 2nd attachment



Edited by Tom
Link to comment
Share on other sites

The culprit seems to be the "advection type" on your curl noise. Change it to "Update Force" and you should be fine.

Looks, like you answered this problem, while I was testing it :D

I edited my first post.

Edited by Tom
Link to comment
Share on other sites

The culprit seems to be the "advection type" on your curl noise. Change it to "Update Force" and you should be fine.

To explain this a bit. POPs has a number of default rules that update the simulation's state based on particle attributes, such as updating a particle's velocity from forces, and then computing the position based from its velocity. So if you explicitly set the position of a particle (for example), then you're telliing POPs that you want that particle to have that position. So in that case, POPs will not try to undermine you by changing the position from underneath you.

Link to comment
Share on other sites

I think Ed is referring to the time-step that POPs applies to the particles for each iteration of the simulation after the rules (POP network) are evaluated.

The POPs form rules which are evaluated by the POP solver. There is no explicit POP solver as a Node as in DOPs but you can consider the POP Network folder node containing the POP Network rules to be that solver as all the solver parms are there such as time step iterations and more. Here's a naive description of what the POP solver does after the POP rules are evaluated:

- Grab incoming position of points and transform them to any new positions without affecting any attributes.

- Take Acceleration <accel> and add it to incoming velocity <v> with respect to mass (unless this is disabled in any of the POPs that have this feature)

- Take velocity <v> which is speed in Houdini units per second and project the particles forward (take vector <v> divided by time-step then add to position <P>).

You can test this out very easily with a single particle point birthed at frame one. Birth it with no velocity and leave default mass to 1 unit. Use an Acceleration POP to add acceleration in say the Y direction of 1 only at frame 1 and watch the details view / spreadsheet. At frame one you see acceleration is (0,1,0) and velocity is (0,0,0). At frame two acceleration is (0,0,0) and velocity is (0,1,0) and on infinitum unless you add drag or other forces/velocities. Forces are most likely driven in to acceleration (or should be if you are not and this is your custom POP) and if you are modifying velocity directly, indicate as such and add to <v> directly generally with a mix of incoming <v>.

I believe there is currently no support for rotational momentum in the POP solver at this time.

Edited by old school
Link to comment
Share on other sites

Thanks, OldSchool, for your comprehensive explanation.

I tried your example, well, at frame 2 the acceleration is <0,0,0>, but velocity is <0,0.416667,0>, but I get the point.

In fact I added a Position POP just as test and I had the particle glued in the space ignoring a non zero velocity. :)

So POP forces and DOP simulation work only with velocity and acceleration, never touching the particles' positions if not by their velocity or acceleration, right?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...