I apologize if I come across as a disgruntled critic of the fluid sim, because after 30+ days of messing with this monstrosity that it is, I still cannot for the life of me get it to do what I want it to do. But through sharing my frustration and my experience with this thing I thought maybe I would help some of the newbies out.
For most of these simulations, due to domain size and speed of fluid, I was limited to a water resolution of 185 to 200. So keep that in mind when reading this.
My current simulation has the following settings.
domain size: 40x40x26, fluid real world size: .5(puroposely kept tiny)
inflows: 4 cylinders…2 x 9 units long, 2 x 1 unit long
inflows: 12 “droplet” inflows
outflow: deleted it after all.
obstacle: shell 39x39x25
First thing I wanted to do is a simple simulation of water flowing out of 2 curved pipes into a hole in the ground. Any resolution above 185 would absolutely crush a 1 year old laptop, not that it mattered since the fluid kept leaking through the curved pipes irrelevant of how many different shapes, wall sizes, I tried. In addition to that any water that flowed down into my water hole, would stubbornly not stick to any of the walls and instead kind of create a free standing conical shape.
TIP: Unchecking “remove air bubbles” in the domain panel could help prevent the water leaking through the pipes…some. Leaving it on makes the water extend and fill any shell type obstacle you are using and leaks through its walls. Problem is that turning off “remove air bubbles”, makes the water pretty much ignore the shape of your water hole. It just stacks on top of its self forming a cone of jello. How nice! Damned if you do, damned if you don’t.
In messing with it, I discovered that by designating a very large domain size(40x40x20) to a real world size of .5 in the domain panel, with an inflow speed of about 5, and pointing 2 cylindrical jets at each other, it would create this pretty awesome vortex jet splash that sprayed water everywhere and drenched everything.
Ok cool, so lets try to do an organic room that gets drenched in water.
ANYTHING but another demo of water in a square room you see on Youtube would be a plus at this point. As it turns out, there’s probably a reason that’s the only thing you see. The fluid sim pretty much breaks itself for anything other than that.
At first the room still had the water hole at the bottom, and even though the fact the fluid broke up in a million pieces did a better job of filling the hole at the bottom, there was so much water it completely overfilled it. It still looks cool, except for the fact that once the room overfilled above the hole, the water still radiated out from the hole edges to fill the walls of the room, despite the room being half filled with water! Huh.
Looks nice, except for the ring of water at the bottom that gradually extends from the overfilled hole to fill the sides of the room. Sooooo realistic…
Rule #1: Don’t make water holes inside a rounded room. Not to mention, it leaks through your hole anyway creating excess fluid.
Solution: Try an outflow to get rid of excess fluid?
It turns out an outflow only compounds the problem above, and on top of that, outflows have a mind of their own as well. Water will sometimes happily sit on one, go through it completely, and in other parts, will get deleted by simply being in its proximity.
Warning: An outflow MAY or MAY NOT delete water whether or not it touches it. There’s also little guide to how much water it actually deletes. At other times, the outflow will delete water that is simply in its proximity, sucking everything out in a split second leaving you with nothing in your entire room. Another 24 hours wasted…
So let’s remove the water hole and now we are back to a square room filled with water. Ok but a the very least I want a more rounded square room, with rounded corners and a bit of a bank to the lower part of the walls. “HA HA” said the fluid simulator. “I will completely ignore, as I see fit, when to allow water to pass through your rounded walls. Some of me will pass through it, while the rest of it will try to conform to the shape in the process making 3 underneath water surface layers underneath.” One that passed through the wall and conformed to the SQUARE shape of the domain. Another that was conforming on the backside of my rounded walls. And finally a third layer that actually did what it was supposed to do. Flipping normals? Subdivisions? Low polygon count? High polygon count? Don’t bother. Won’t make a difference.
Warning: Creating a room obstacle of a shape other than a cube will result in leakage!
Solution: You WILL have leakage! Accept it. Period.
Ok fine so we’re just going to have to scale the room at the end and meticulously get it to match up with the fluid. Next problem is that in 4 seconds of the jets blasting water, half the room is filled with water, so much so as the pipes are half submerged in water. Which wouldn’t be so bad, except for the fact that even if you set the inflow to a speed of 0, it’s still dripping fluid in the shape of a cylinder. So rather than getting the water to shut off naturally, you have a cylinder made of water on top of your water.
Ok fine, let’s animate the inflow, and make it leave the domain as its shutting off. That should fix it. Right? Wrong!
The water bubbles at the beginning of the jets are there simply due to adding an animation key on the inflow!
Warning: Simply setting an animation key on your inflow will completely change the shape of say -a cylindrical jet of water! It no longer looks like a cylindrical jet, but rather half of it deforms into a zillion particles, then magically straightens back up into a straight jet. All this just because you added an animation key frame, even IF you don’t actually change the location of your inflow. Animating the domain size also creates unexpected glitches and fluid simulation. PS: Whenever you see words like “unexpected” in relation to the fluid sim, don’t try it because it means you will waste hours and hours and hours baking and never figure out why it’s glitching!
Luckily since the jets straightened back out, the jets still smashed into each other creating my vortex of water. After baking the simulation for 2-3 days, I realized it was a bit too short, and I wanted to have more than just a standing body of water at the end. Maybe add a control object in the shape of a star fish coming out of the water. So let’s play with control objects.
Warning: To properly use a control object…HA HA HA!
The control object looked like absolute crap on a quality setting of 10 and 185 water resolution. On 11-20 quality it totally crashed my computer. On 20-50 and a water res of 200, it worked fine even if the required memory was now well over 1GB, would take 1 month to bake if I left it on, and before, it crashed at 300MB. Explanation??!
Despite bumping the water resolution to 200, and the quality of the control object to about 30, the control object’s resolution was still horrible even with simple shapes. In fact, the water itself was nice and smooth, but the water making up the shape of the control object looked as low res at a resolution of 200 as at a resolution of 85. Same for a quality of 10 or a quality of 30.
Solution: Just don’t use it. 3 days wasted.
I gave up on it and decided to just have a regular jelly fish swimming through my room of water. Except, I was still not happy with the size of the water bubbles, and wanted finer water bubbles as the jets blasted it everywhere.
You might suggest turning on tracer or drop particles. As you can see they are there. Of course, the problem is in such a simulation, the simulator gets COMPLETELY confused and after the water settles, half of your particles are frozen mid air. Useless.
Warning: Using tracers or any other particles in a water jet, vortex room simulation will completely confuse the simulator. The water will settle and half your particles will remain frozen mid-air!
I also tried using a combination of fluid particles and dynamic paint along with my fluid sim.
Rules:
-You CAN use the fluid simulation to paint with dynamic paint and create wet maps.
-You CAN create ripples using dynamic paint right on top of your fluid simulation if used as a canvas even though they are subtle and require a high water resolution.
-However, even though you can use dynamic paint to generate vertex weight maps right on your fluid sim, you cannot use the fluid sim as a particle obstacle or generator to create the extra splashy effects. (Since the particles sims no longer have reactive particles… this is really needed.)
-You may or may not be able to use the vertex weight map, to generate particles. You CAN use it to control the LENGTH of hair particles, but so far, I have not been able to figure out how to use the vertex weight maps created with dynamic paint to generate particles from those locations. BUMMER! If anyone knows this answer, please, please let me know!
So I decided to simply bump up generate particles in the domain panel to get my smaller bubbles and more splashes from about .4 to 1. Guess what? It took 3 days to bake and now my room is barely filled 1 quarter of the way.
Warning: Increasing generate particles from about .4 to 1, will literally result in DOUBLE the water loss when it settles!!!
And despite me removing a small outflow, increasing the duration of my inflows, as I typed this I am on DAY 3 of the SECOND time I tried baking this fluid simulation only to find out, I’m getting the same result in terms of water loss. A day and a half to go. My jellyfish is done, but it won’t be swimming int this freaking square room!
Thank you and Dear Fluid Sim,
I hate you.