Jump to content

POP collisions with large static object


ChristopherC

Recommended Posts

Hi!

 

I've got a bunch of impacts being triggered at different frames and an object `GROUND` which is very large (radius 100). When each impact is being triggered, a small concave hole (radius ~0.1) is added to the ground. I want to use this deformed ground geometry as a static collider for a particle simulation.
 
Using a static object to represent this ground in the DOP network won't work unless the volume resolution is cranked up so high that it will take much too long to compute—especially since it is being set as a deformed geometry.
 
Disabling the `Use Volume Base Collision Detection` parameter results in unstable results.
 
Replacing the POP solver altogether with a `RBD Point Object` and setting the static object Bullet's geometry representation to concave helps but it wasn't always stable in some tests that I've node and it was a bit too slow for something that doesn't require a super accurate collision—as soon as the particles fall in the holes instead of floating on top of them, I'm happy.
 
My last idea has been to split the ground into smaller collider geometries. So the particles emitted for a specific impact will collide only with the ground collider for that impact. This is what I've tried to set up in the attached scene.
 
Now, I have 2 questions regarding this approach :
- I've managed to use `Copy Objects` to create a different `POP Object` for the particles of each impact but I can't manage to do the same with the ground collider. Is there any trick to get the `Copy Objects` node to work with a `Static Object`?
- I would love to name the copied objects according to their `copynum` option but it doesn't seem to work when I use the `dopoption` function in the `Object Name` parameter?
 
And finally, is this a good approach at all?
 
 
Cheers,
Christopher.
 

POP_collisions_with_large_static_object.hipnc

Link to comment
Share on other sites

Quick update: after checking an example scene and seeing that the `Copy Objects` node indeed works with any type of object, I realized that the issue in my case seems to be due to the `Static Object` being set to `Use Deforming Geometry`. So far it seems to only copy the object with the geometry defined at the first frame.

Link to comment
Share on other sites

I've found how to workaround the issue with the `Copy Objects` node not working when `Use Deforming Geometry` is enabled—I've got to add a `Modify Data` node to manually set the value of `Geometry/time`. Shouldn't the `Copy Objects` node take care of this?

Link to comment
Share on other sites

I think that I misunderstand the fundamentals of the `Copy Objects` DOP.

 

In the attached scene, the DOP object `popobject1` (objid 0) is being copied into 2 new objects (objid 1 and 2) while the original object is being deleted.

 

In this simple setup, I expect the node graph plugged into the 3rd input of `popsolver1` to be evaluated twice, and the `popwrangle1` to set the `objid` attribute to either 1 or 2 depending on which copy is currently being evaluated.

 

My intuitions seem to be wrong here, so could anyone please give me a hint of what's actually happening?

 

copy_objects.hipnc

Link to comment
Share on other sites

Sounds like I'm bound to doing monologues on this forum! :)

 

I still haven't found the answer to my questions but I think that I've got things to work on a test scene, see attached file.

 

Each particle is defined within its own DOP object and collides only with the static object of the matching color (same impact attribute in fact). The trick relies on the use of the `Collide Relationship` and `Apply Relationship` nodes.

 

For some reasons the `Gas Integrator` node that integrates the positions of the POP becomes very slow to compute with this setup. It's not as if the test scene was complex though. This makes me worried to port this technique over to my working scene, let's see.

 

collider_per_particle.hipnc

Link to comment
Share on other sites

  • 5 years later...

I have that sometimes too. Still got solace from being able to ask tho, :lol:
Plus sometimes asking makes you suddenly think of answers you wouldn't think about if you didn't ask. Very strange.

,

Edited by Krion
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.

Guest
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...