Troubleshooting Whitewater

Intro

Once again we are diving into water. However, I thought it might be best to dig deeper into whitewater more, as I just briefly covered it in my last oceans blog. You can find both pages for them HERE and HERE. This page won't be covering the basics of whitewater, but building upon the idea that you've worked with water sims before. So let's get started.

Rapid Water Simulations and General Tips

Here are some general tips for vortex-ish, rapid moving, and splashes of whitewater. As well as some general tips.

  • To achieve a finer simulation, decrease your particle separation. This will make the whitewater less chunky, and smaller in appearance.

  • Remember to add motion blur!

  • If you are creating large splashes of whitewater, you may want to consider increasing the substeps of the whitewater spray for a larger splash. As well as increasing the impulse count or birth rate. However you may notice clipping starting to occur. Or even gaps between the spray particles. If this occurs, consider using VDBs. After you've finished with your whitewater sim, you'll see your import whitewater node. Place down a attribute wrangle, a volume rasterize particles node, and on the left input for the volume rasterize, add a VDB SOP. In your attribute wrangle you'll need to define the size of your pscale, and value of your velocity, then adjust them as you see fit. By converting your whitewater to a VDB you can have more control on how your smooth and connect the particles.

  • Remember to create a bgeo sequence from your compressed caches first, and load them from disk. This will allow you to have a real-time playback of your simulation. This will also make the whitewater run faster overall. This also helps when you are creating a surface representation of your fluid through your particle-fluid surface nodes.

Foam, Bubbles, and Spray Tips

  • Sometimes it's a bit harder to create a decent foam appearance. If your foam shapes are appearing too large you might want to consider lowering the voxel size and adjusting the foam's pscale via point wrangles.

  • You can also change your foam's shader to billowy smoke to create more of a volume look.

  • You can split foam bubbles and spray into groups via point groups. These can be generated by the whitewater solver. On the whitewater solver there is an add state attributes tick-box. This will give you an attribute of 0-1 for bubbles, foam and spray.

  • If you'd like to delete certain amounts of particles from your whitewater, or from a certain area of your simulation, you have a lot of options. You could use a delete by range. This would help delete any particles in between a range of values. You could also delete by age, with a bounding box, or wrangles. Such as: 

 

  • if(@P.y < 0) {

    removepoint(0, @ptnum);
      }

Whitewater and RAM Usage

If you are working on a windows computer you may encounter an error with whitewater. Sometimes when you turn on the density control option for whitewater, you may notice your RAM start to fill up and crash. This error does not happen on Mac or Linux, but it can be a real problem. This issue was sometimes reported in Houdini 17.5.

You also might find your RAM filling up when flip-booking whitewater simulations. 

One way you can reduce Houdini attacking your RAM usage is by turning off OpenCL.  This helps with flip-books. However, when you have density control enabled, this option won't fix anything. Even when disabling  TBBMALLOC_PROXY through the Hscript text-port, this will not fix your density control. Houdini uses averagely 58GB of RAM for 7 million particles simulation, so already things are getting complicated. 

Without density control you can push your Whitewater Scale to 0.007, and simulate more than 20 million particles using just 40GB of RAM. So until this issue is fixed, it might be better to work without it.

Rendering Whitewater

Here are some general tips and tricks for rendering whitewater.

  • By adding or increasing the spec reflection of your water you can create a more natural look for simulation.

  • You don't need to add normals to your whitewater particles to render.

  • Your whitewater needs a pscale attribute to render correctly, and to be visible in the render.

Should You Ever Set Up Your Whitewater Simulations Manually?

Only if you are experienced with using FLIP sims, ocean tanks, and the whitewater system. If you are a beginner or water is not your strong point, then start by using the shelf tools. It is very easy to become confused with how Houdini loads FLIP caches and data inside DOP networks, and handles the particles. If you are manually setting up a DOP network you might miss a file cache or a mesh and that will screw up your entire simulation. With the shelf tools, everything comes pre-made for you so all you have to is modify the shape and style of the water.

Sometimes when you manually create your whitewater your velocity fields might not be exported properly, and your whitewater might appear frozen, or stuck in the air. In this case, double check to see if you are using a Dop I/O node or a Dop Import node. Dop I/O has import presets for FLIP fluid, smoke, pyro etc. These presets automatically bring in all the data that are used for each type of sim that is created.

References

whitewater issue: https://www.sidefx.com/forum/topic/54231/?page=1#post-244662

Whitewater manual setup: https://forums.odforce.net/topic/19090-whitewater-manual-setup/

Violent Ocean, is it possible?: https://www.sidefx.com/forum/topic/72918/

whitewater source and VAT (vertex animation texture): https://www.sidefx.com/forum/topic/72507/

White Water RAM usage: https://www.sidefx.com/forum/topic/70097/

whitewater tool doesn't accept selection: https://www.sidefx.com/forum/topic/58883/

How to use whitewater with deformed ocean only (no FLIP sim)?: https://www.sidefx.com/forum/topic/61375/

Whitewater H17.5, how to disable bubble Emission or spray? HELP: https://www.sidefx.com/forum/topic/68188/

H17 Whitewater stepping issue.: https://www.sidefx.com/forum/topic/59098/

Whitewater and foam shading: https://www.sidefx.com/forum/topic/62320/

PDG for whitewater sims: https://www.sidefx.com/forum/topic/61923/

Whitewater split foam bubbles spray in H17https://www.sidefx.com/forum/topic/58803/

Whitewater solver and RAM usage: https://www.sidefx.com/forum/topic/37926/

whitewater issue: https://www.sidefx.com/forum/topic/54231/

Rendering foam in FLIP simulations: https://www.sidefx.com/forum/topic/37909/

white water stops in the air: https://www.sidefx.com/forum/topic/52901/

White water spray collision problem: https://www.sidefx.com/forum/topic/38714/

Compressed fluid artifacts under the surface causing problems for whitewater: https://www.sidefx.com/forum/topic/48776/

Whitewater setup on deformed grid wave: https://www.sidefx.com/forum/topic/50928/

How delete particles from whitewater?: https://www.sidefx.com/forum/topic/50258/

Whitewater foam, bubble and spray import error: https://www.sidefx.com/forum/topic/49522/

White water foam render: https://www.sidefx.com/forum/topic/49429/

Whitewater, foam shading and rendering: https://www.sidefx.com/forum/topic/29954/