Jump to content

Colliding particle fluid against implicit data


Hazoc

Recommended Posts

Hello

I've been building a melt solver that in a hybrid fashion uses volumes as an iso surface to sculpt and animate general loss of volume of an given object and then pops to greate fluid particles to areas along surfaces where melting occurs and solid matter turns liquid. Then in the end I would merge these two into one volume and render.

How could I keep fluid particles on top of the underlying and deforming iso surface ? Since polygon representation of the iso surface sequence from the hard drive is constantly varying in every way, interpolating sub frame -data directly is not possible and collisions quickly explode.

Increasing global substeps of the DOP network helps a bit but is not stable in any way. The fluid would have to be able to rest and slide slowly along the iso mesh as it's melting.

If I was reading in a geo sequence of constant topology I'd get away by using timeblend SOP I quess. I see the SOP has an option Point Id Attribute. Wonder if that could solve the problem..

Macha already demonstrated what was my initial getaway idea: Doing collisions&sliding in pops using pop vop and sdf's. The results I got weren't that stable either. Plus the fluid needs to have volume which introduces various complications to the pop-method I believe. It can't be just a flat particle group sliding down.

Link to comment
Share on other sites

Well I should probably be making a some sorft of RFE about this. Not sure what to request though. Support for SDF as a collision/slide object in pops ? I saw Marc already hoping that for H12 in the Houdini 12 wishlist.

Link to comment
Share on other sites

Hmm, from a theoretical point of view, volumes based method is a "natural born" collision detection algorithm. This is why Houdini's RBD are based on volumes. It's much easier, from a computational point of view, to detect intersections with fog or sdf volume data than polygons.

Secondly, AFAIK fluids in Houdini are volumes by default. Polygonal representation are computed from SDF, which are primary and comes from simulation. That means colliding particles with volumes is probably the most accurate. No conversion, interpolation etc required.

How close you can come with this in terms of stability or accuracy in your particular case is another topic though. Maybe you can provide some example scene, so we could use it as a test bed?

I could bet volumes, not anything else...

Link to comment
Share on other sites

Hmm, from a theoretical point of view, volumes based method is a "natural born" collision detection algorithm.

Problem solved! It _IS_ possible to feed sdf simdata recorded in sops to rbd object's collision field and forget about polygonisations etc. I was trying this about 10 months ago with H10.something linux 32bit build and got some weird results. No idea what was the problem back then(me of course) but now I got it cool and stable. Thanks Symek:)

Link to comment
Share on other sites

Seems like that only SDF simdata recorded by IsoOffest SOP is in valid format directly for RDB objects. I try grab sop solver processed sdf stuff from the dop net by writing it into disk using FileData DOP and loading it in RDB object, it says somethin like "unexpected parent data "volume" ". There is definetly some confusion around this issue.

Link to comment
Share on other sites

I think I've found a huge bug or very weird functionality at least. Could someone confirm this and check my test scene. It appears that when using deforming collision data built from a volume, particle collisions get crazy if RBD object's SOP path parameter is used. When the data is just deforming geometry, the fluid stays stable. I've writen descriptions into the file with stickies.

Pretty sure it's about changing SOP topology that gets RBD ojects head messed up.

Edited by Hazoc
Link to comment
Share on other sites

I'm not like deep into the subject, but tweaking collisions parameter for fluids particles seems to fix that problem. Turn off "Use Point Vel. for Collision" or turn on "Use Volume Vel. for Collisions" in Collisions Tab of Fluid Object.

skk.

Link to comment
Share on other sites

Turn off "Use Point Vel. for Collision" or turn on "Use Volume Vel. for Collisions" in Collisions Tab of Fluid Object.

Hmm true! I think it only makes this even more confusing. What's the relation with this parameter and the SOP path:D

Thanks for the reply!

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