I am trying to create a pickle jar, and when the jar moves/rotates, how would I make the appearance of the fluid staying level. I am trying to avoid heavy processing from a fluid simulation. not looking for hyper realism just a quick fix.
-
5$\begingroup$ Saw this on Blendernation last week for a dynamic liquid without the fluid sim blendernation.com/2019/06/11/dynamic-fluid-rig-tutorial $\endgroup$– robCommented Jun 20, 2019 at 8:23
-
$\begingroup$ Just spitballing here, but you could possibly use a constraint to clamp/track a plane to an empty that defines the rotation. $\endgroup$– wkustuCommented Jun 20, 2019 at 14:11
-
$\begingroup$ This is a great Idea, but how would I keep the plane, acting as the water, the shape of the container, as the container rotates? I tried a boolean on the plane but does not keep the plane inside the container. $\endgroup$– Nick SiebenCommented Jun 20, 2019 at 17:01
-
$\begingroup$ This was great! works pretty quick and easy. Thank you $\endgroup$– Nick SiebenCommented Jun 20, 2019 at 17:46
-
1$\begingroup$ using this idea, what I did was; created a cup, then created a shape(water) that fills the cavity in the cup. I used boolean on the water, with a box that would change the height of the water. I created an empty and used the child of constraint, and made the empty a child of cup. I then made the box a child of the empty. On bothe the box and the empty child of constraint I unchecked follow all rotation and scale. works great. However, Im wondering if there would be a way to adjust the level of water, if the cup tips past the point of pouring. Also interested in any other ways. $\endgroup$– Nick SiebenCommented Jun 20, 2019 at 18:02
1 Answer
You can use a Surface Deform Modifier on a higher poly mesh and run a cloth sim on a low poly mesh to make it look like water, OR just use the lower poly mesh, if you don't need realism:
High poly mesh --> Add cube --> subsurf modifier level 2 and apply it--> cut the bottom half off and delete in edit mode (so you have a half sphere) --> right click in edit mode and subdivide it 2 times --> Scale on z axis until flat-ish, like top of water
Low poly mesh --> Add second cube --> subsurf modifier level 2 and apply it -> cut off bottom half again --> Do Not subdivide more --> scale in edit mode so it's flat-ish, same shape or as close as you can get to the higher poly mesh --> align lower poly right on top of higher poly,very close
--> set surface deform modifier on high poly mesh, with low poly mesh as target --> click bind
--> set a cloth physics simulation on low poly mesh --> make outer ring of LP mesh a vertex group with weight of 1.000 --> use that vertex group as pinning group in cloth sim>Shape>Pin group (so it doesn't go flying off the screen, lol)--> adjust weight of cloth to .8 kg; Field Weights>Gravity to .001 EDIT: try switching "angular" to "linear" in ClothSim > Physical Properties > Bending Model. This might smooth out the physics.
--> Add empty --> add force field>Vortex to empty --> set vortex strength to 200
This should be a start, just play with the cloth simulation a little bit. If you use higher poly, set lower poly to Not Render.
I'll come back and see if I can edit this later and maybe add a "How to" video, too tired right now.
-
$\begingroup$ I really like this example, the description was easy to understand. The only thing I am curious about is how do you make the "water" stay level, as you rotate the glass? I am probably approaching it wrong, but if I rotate the "water" the force field does not keep the water level. otherwise this works great. $\endgroup$ Commented Jun 20, 2019 at 16:56