Rahul Girish Posted August 25, 2019 Share Posted August 25, 2019 So I am quite new to Houdini, I have a fairly simple setup where I am simulating the behavior of a viscous material where viscosity is increasing exponentially with age and multiplier. So by frame 120 particles stop moving. I am emitting in a line in a loop back and forth so slowly the particles start creating a layered wall. However I have encountered 3 very intriguing problems which for the world in me I cannot seam to figure out: 1 - When meshing the particle data the particles that are close get meshed (obviously) and I don't really see the layering that I need to. Tried creating a very highrez model but didn't really work. (Is there a way to use the viscosity or age variable to stop particles from meshing together and keep the layering intact?) Currently using VDB from Poligons then converting it. 2 - Despite a very high Viscosity, the particles move somewhat when new layer of particle is added on top. Is there anything like Pop-State (as in previous releases) where I can freeze the particles with attributes? currently using (if viscosity>100000 {v = 0,0,0) to set velocity to 0 once viscosity is high enough. 3 - If I wanted to use a deformable (cloth/plastic/elastic) object to fill the flip fluid into how can I go about this? I hope some of you brilliant houdini artists have some advice or tips on how to go about solving these problems. Houdini file attached. SimCon1.hip Quote Link to comment Share on other sites More sharing options...
jamesr Posted August 26, 2019 Share Posted August 26, 2019 Quote 1 - When meshing the particle data the particles that are close get meshed (obviously) and I don't really see the layering that I need to. Tried creating a very highrez model but didn't really work. (Is there a way to use the viscosity or age variable to stop particles from meshing together and keep the layering intact?) Currently using VDB from Poligons then converting it. You could try adding a custom attribute called "layer" that increments every time your source hits the end of its track and bounces back again. Or you could maybe do it by age. Then after the sim you can blast non-selected by something like @layer=1, and mesh that on its own, and so forth. Quote 2 - Despite a very high Viscosity, the particles move somewhat when new layer of particle is added on top. Is there anything like Pop-State (as in previous releases) where I can freeze the particles with attributes? currently using (if viscosity>100000 {v = 0,0,0) to set velocity to 0 once viscosity is high enough. You can use the i@stopped attribute and set it to 1 once the particles reach a certain age. Quote 3 - If I wanted to use a deformable (cloth/plastic/elastic) object to fill the flip fluid into how can I go about this? Not an issue. You can tick on "use deforming geometry" on your static object dop. Try using the "Collision Source" sop to help get you started. 1 Quote Link to comment Share on other sites More sharing options...
Atom Posted August 27, 2019 Share Posted August 27, 2019 (edited) Here is the i@stopped attribute included inside the if statement. I dropped the viscosity threshold, quite a bit, so the fluid would come to a stop quicker. if (@viscosity>3600){ @viscosity = 3600; @v = set(0,0,0); i@stopped = 1; } ap_SimCon1.hiplc Edited August 27, 2019 by Atom 2 1 Quote Link to comment Share on other sites More sharing options...
Rahul Girish Posted August 29, 2019 Author Share Posted August 29, 2019 On 8/26/2019 at 10:40 PM, jamesr said: You could try adding a custom attribute called "layer" that increments every time your source hits the end of its track and bounces back again. Or you could maybe do it by age. Then after the sim you can blast non-selected by something like @layer=1, and mesh that on its own, and so forth. You can use the i@stopped attribute and set it to 1 once the particles reach a certain age. Not an issue. You can tick on "use deforming geometry" on your static object dop. Try using the "Collision Source" sop to help get you started. Incremental layer attribute was a nice idea! I tried it out quickly and it works well thanks! Deforming geometry is a bit problematic though. I don't want to use a deforming geometry, rather deform the collision boundaries as the fluid fills the volume, as if its a box made with cloth on the sides constrained by the edges. This is I guess also the difficult part to incorporate, flexible collision geometry... On 8/27/2019 at 2:25 AM, Atom said: Here is the i@stopped attribute included inside the if statement. I dropped the viscosity threshold, quite a bit, so the fluid would come to a stop quicker. if (@viscosity>3600){ @viscosity = 3600; @v = set(0,0,0); i@stopped = 1; } ap_SimCon1.hiplc Thanks a lot! I'll post some images of the studies done once they are approved for others to see! Quote Link to comment Share on other sites More sharing options...
scaduxx Posted June 7, 2020 Share Posted June 7, 2020 On 8/29/2019 at 9:39 PM, Rahul Girish said: Incremental layer attribute was a nice idea! I tried it out quickly and it works well thanks! Deforming geometry is a bit problematic though. I don't want to use a deforming geometry, rather deform the collision boundaries as the fluid fills the volume, as if its a box made with cloth on the sides constrained by the edges. This is I guess also the difficult part to incorporate, flexible collision geometry... Thanks a lot! I'll post some images of the studies done once they are approved for others to see! Did you find out a way to softly deform a geometry with flip ? Also, could you share the hip with the layer attribute cause I got the same problem but I didn't really understand what you fixed. Quote Link to comment Share on other sites More sharing options...
Rahul Girish Posted June 8, 2020 Author Share Posted June 8, 2020 Unfortunately I cannot find the incremental layer-attribute file I setup in my initial experiments. I remember working it out through time-remapping. i.e A set amount of time after particle emission (when it reaches the end of the track) a predefined particle attribute automatically increments by an integer value. For my purposes however I ended up just using particle age component and exponentially increasing viscosity to 'simulate' the behavior of concrete printing. For the deforming geometry I found fluid force DOP connected to cloth solver worked the best. It creates a clean interaction between cloth simulation and fluid simulation which interact with one-another. You can find the test video attached showcasing the cloth geometry deforming with the viscous fluid > NewCloth.mp4 My project details can also be found online here if you need more info on the simulation methodology > https://www.project-curiosity.com/experiment/mas-eth-dfab-thesis The hip file (very messy) with the simulation configuration can be found here > Mrk_22-Export.hiplc 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.