S16 & Realflow 2015


Recently I have been busy completing scene 16 and it has been a pain. I was not getting the simulation under control.

The problem with the sim was that I did not get the interaction with the robot down as I wanted it to.

As you can see the robot is hardly interacting with the robot. Most of the time when this happens you check how the isosurface is. Inside realflow it was looking pretty good, so I tried adjusting the interaction factor on the robot. This actually did create the splash that I wanted but the physics where all over the place.

The plashes for example had a high velocity and kept on rising way to high. Not the result I was going for.

I fiddled with domain and surface offset on the robot and tried various combinations but to no avail. I’ve ran several simulations where results were exploding hybrido tanks.

Isosurface was eating particles

The next thing I tried was increasing hybrido substeps. This also did not help the fluid. I was still getting the same results.

I though maybe the resolution has something to do with it and since I had a weekend of time I decided to go crazy with the global cell size. I put it down to .3 and the sim contained 90 million particles and generated 500gb of data through the weekend but again, the sim was not looking good.

Bad splash

Back in May we had the FMX festival and I had the chance to meet Gus and Luis from Realflow, I showed them some robot shots done with Realflow and asked me if I would like to be in the beta program. Since I tried Realflow 2015 alpha I decided to ask questions on this issue on the beta forums.

I posted an extended topic on the hybrido interaction and how I wanted it to look. RealFlow Product Manager Gus gave me some tips about scene optimalization and tips on the robot isosurface.

He told me to combine the robot into one single mesh and import it either as a multibody or in a SD file. Since I had trouble in the past trying to create a proxy model for the robot I had to check if there was another way possible.

The problem was that after using mesh -> combine in Maya the robot lost it’s animation. However baking the animation first and then using mesh -> combine worked. Now I had the entire robot as one single object. Before this I cleaned up the rig and reduced the poly count significantly and got rid of a lot of the smaller objects. Now I have a perfect proxy model.

The Solution

I used advice from user pixellusion to introduce some randomness in the hybrido scene and added an ocean daemon. I decided to leave the interaction factor at 1 and tried other values.

I also double checked FPS, scale and such but these where all good. Drag force was at default.

I’ve also used Gus’s tip on getting more object friction in there but it didn’t create the splash.

I’ve tried fiddling with Core/Surface particle sampling but to no avail. It did not create the splash that I wanted. I however found an solution for this whole problem.

I am currently using 4 surface samples for the surface and 2 core samples for my sim. Also i’m using a 3 meter surface bandwith since our robot is 11 meters in “real” height. (Your tip was used here pixellusion, thanks).

Eventually Luis had the right answer. It was the domain offset. I’ve tried before with a domain offset of 3 but it didn’t work. Since the default is 0.1 I already thought i went over the top. However last friday I tried a value of 5 and it started interacting the way I wanted.

Now after some fine tuning after friday I’m getting the result I wanted with a value of 7.5 as domain offset (that’s 7 and a half meter!). Considering the robot size this might be logical, I’m not sure to be honest :D.

I’m still using a relatively low depth water but the splash is working perfectly so far. I am still simulating as I am typing this. Here is the half-way result, VERY satisfied so far!!!

Look at the bulge that’s happening at the bottom of the splash, the interaction is really good.. Exactly as I wanted.

Also the speed is very acceptable. 15 million particles in this sim.