Gianni333 Posted March 10, 2020 Share Posted March 10, 2020 Hi guys, I'm trying to make 2 objects that are filled with liquid collide, so that they break apart and release the fluid on collision. I have the breaking and collision set up and working, but I can't get the fluid to stay inside the objects until they break apart. I made the objects hollow with thickness by duplicating them, scaling the duplicates down a bit and then combining them with a boolean. I filled the inside with a point cloud that I converted to a flip fluid. The collision geometry seems fine, no holes etc. Since the objects are moving pretty fast, the fluid is halfway outside the objects after one frame. The rest also doesn't stay inside, but is splashing in all directions. How can I make the fluid stay inside the hollow objects? Any help is much appreciated. Quote Link to comment Share on other sites More sharing options...
Feather Posted March 10, 2020 Share Posted March 10, 2020 Thin walled objects and flip are not friends XD Unless you intend to render these objects as transparent and hope to see the fluid inside, the easiest way is to just start your sim on the frame just before the two objects collide and make sure the fluid has initial velocity in the direction of travel. Otherwise, a couple of things you can do is rather than use the same collision volume for every frame, make a much much thicker version of the containers that is used on every frame just before the collision, then using a switch, transition to the fractured volume. This means pointing your rbd object collision volume proxy to the vdb and using "volume sample" as the method. Alternatively, and this ones for like, if you have to see the fluid moving inside and you're shaking it. First first run sim A. This is your object and the fluid held static at zero with an animated force that represents the inverse velocity of your objects motion. You run this simulation at 0,0,0 and the forces slosh the fluid around inside the container up until the contact frame. Next add to that simulation the animation of your closed object. This becomes the rest position. inside sim B you would have a pop vop that, up until the frame of collision, is overriding point position with rest and velocity with of course the velocity of the previous sim. Then, on the collision frame, a switch flips over to using standard P and V allowing it to simulate normally. Quote Link to comment Share on other sites More sharing options...
Atom Posted March 10, 2020 Share Posted March 10, 2020 I'll mention a couple of things. One your merge, collision should be on the left, not the right. Also make sure to visualize your collision surface using the guides of the FLIP Object, not the Static Object. Your particle separation actually controls the resolution of the collision surface, by default. You can "decouple" that default state and set the collision resolution independent of the particle separation. Also make sure you have inverted the surface of the Static Object. Quote Link to comment Share on other sites More sharing options...
Gianni333 Posted March 12, 2020 Author Share Posted March 12, 2020 (edited) On 11.3.2020 at 12:25 AM, Feather said: Thin walled objects and flip are not friends XD Unless you intend to render these objects as transparent and hope to see the fluid inside, the easiest way is to just start your sim on the frame just before the two objects collide and make sure the fluid has initial velocity in the direction of travel. Otherwise, a couple of things you can do is rather than use the same collision volume for every frame, make a much much thicker version of the containers that is used on every frame just before the collision, then using a switch, transition to the fractured volume. This means pointing your rbd object collision volume proxy to the vdb and using "volume sample" as the method. Alternatively, and this ones for like, if you have to see the fluid moving inside and you're shaking it. First first run sim A. This is your object and the fluid held static at zero with an animated force that represents the inverse velocity of your objects motion. You run this simulation at 0,0,0 and the forces slosh the fluid around inside the container up until the contact frame. Next add to that simulation the animation of your closed object. This becomes the rest position. inside sim B you would have a pop vop that, up until the frame of collision, is overriding point position with rest and velocity with of course the velocity of the previous sim. Then, on the collision frame, a switch flips over to using standard P and V allowing it to simulate normally. Thank you so much for the suggestions, so many possible solutions, much appreciated! I tried simulating the fluid just before the collision and it seems two work very nicely I have 1 problem though: In order to create the fluid I merged the 2 objects, scaled them down a bit and created points from volume. My main issue is now that I have only 1 fluid object, so I can only give it just 1 initial velocity. That means 1 of the 2 fluids always goes in the wrong direction because the 2 objects are flying towards each other. Edited March 12, 2020 by Gianni333 My follow up question has changed Quote Link to comment Share on other sites More sharing options...
Gianni333 Posted March 12, 2020 Author Share Posted March 12, 2020 On 11.3.2020 at 12:55 AM, Atom said: I'll mention a couple of things. One your merge, collision should be on the left, not the right. Also make sure to visualize your collision surface using the guides of the FLIP Object, not the Static Object. Your particle separation actually controls the resolution of the collision surface, by default. You can "decouple" that default state and set the collision resolution independent of the particle separation. Also make sure you have inverted the surface of the Static Object. Thanks a lot for pointing this out. I wasn't aware that right or left mattered in the merge and also that the guides from the fluid are not the same as the collision guides. Many lessons learned today By inverting the surface of the Static Object do you mean checking "Invert Sign" under the RBD Solver/Volume tab? Quote Link to comment Share on other sites More sharing options...
Gianni333 Posted March 16, 2020 Author Share Posted March 16, 2020 Update: I solved the issue with the initial velocity by creating one fluid object per filling and merge the 2 fluid objects before connecting them to the fluid solver. The issue is now that the fluid from the 2 fluid objects seem not to interact with each other. It's not too obvious, but I'm wondering why that happens? 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.