Ocean Simulations Part Two

Whitewater 

In Houdini the whitewater system is mostly controlled by the whitewater tool, or shelf tool. This tool creates mist and foam on the surface of your ocean and FLIP fluid simulations. This would also help create any secondary effects for your simulations. It's not recommended to manually create a white water simulation on your own, unless you have experience otherwise.

The whitewater system is heavily reliant on the forces applied to the particles it creates. Depending on the forces you apply to the sim, the particles and foam will behave differently. Some pointers to remember:

  • The more buoyancy you apply, the more foam will float.

  • Gravity is automatically applied to all of the particles.

  • The particles movement is based on the underlying movement of the water simulation beneath it.

  • By turning on depth control, you can make your foam and mist stick to the surface of your ocean.

  • If your whitewater is clumping, then adjust your density control.

  • If you turn on the limit emission parameter you can prevent your solver from creating too much foam.

  • Lifetime is the overall average lifetime of your particles

  • You can control the death rate of your particles by turning on erosion, so the particles disappear based on the surrounding density. 

 There are also other forces that you can use to repel your whitewater around in your simulation. Some attributes you can use are: action, phase,

pulse,radius, noise, crampedness, and magnitude. These attributes do not age overtime unless otherwise told to do so. 

The whitewater source object node is where you'll want to focus the bulk of your efforts. This node contains most of the information for your simulation. Some main parameters to focus on in this node are the curvature,acceleration, and voracity tabs. These help tell your whitewater in different ways where to form, and how.

The whitewater DOP or simulation node controls the animation itself. Make any movement edits there.

Whitewater simulations can be very RAM heavy so watch out with your settings. Learn which ones to turn up or down when you are going for your final render. Caching will save your bacon here. Caching the emitter will absolutely let you save time when it comes to rendering,siming, and playback times.

Colliding Objects with Ocean Surfaces

Now for the fun stuff. Making a scene other than a simple wave tank can be rather difficult. Such as if you wanted to create a boat on the surface of the ocean, or maybe a shark leaping through the air. 

You'll need to start by isolating or creating a volume of the object you'd like to collide with the surface of your ocean/water. Then adding a volume source in the DOP net of your simulation, and feeding in your volume object from there. You can also create and isolate different point velocities in your volume object. Then re-add those point velocities into the water, so the wave are affected by the movement of your object.

A really great breakdown and example of this is Doxa Studio's optical flow tutorial. This concept can be applied to almost any version of a ocean simulation with interacting objects.

Link to Tutorial: https://www.youtube.com/watch?v=mZfvIE37kE4&list=PLrGnfPAJAdTfEIKFQykzNA48aq1e752Bn&index=105&t=0s

You can also turn your collision geo into a deforming object to interact with your water sims. Remember to turn on: Use Object Transform if the object in animated. You can also apply the suction shelf tool to pull the water up on your object as well. 

More Render Tips

  • Always have reference for your ocean body. There is tons out there, don't be afraid.

  • Choose an interesting camera angle that shows off your render well. I usually try to make one that also clips out any parts that I don't like about my water sim.

  • You can render the water with motion blur to create a sense of overlap in the waves.

  • Focus on the refraction settings more, as well as cranking up the diffuse, leveling out the transparency, and reflections.

  • Displacement maps can also give you more detail in your water's texture. Consider giving them a try.

  • If you composite in Nuke or Davinci Resolve, you can easily fix anything that might need color correcting.

Real World Ocean Physics

Since Houdini's system is based on real life physics, I thought it might be good to cover Ocean Physics, Oceanography, and an overall look

into how our natural water systems work. The best research you can ever do for your simulations, is real life reference. So here we go.

 

Oceanography is the study of the physical and biological aspects of the oceans. This section is going to go a bit more in depth into that.

Some examples of bodies of water that exist are; salt water oceans, lakes, ponds, rivers, and streams. These water bodies behave differently based on their location, weather, and other attributes. 

 

Oceans tend not to freeze too much because of their high salt content, high density, and size. 3.5% of the makeup of ocean water is salt compared to fresh water. Which is does not contain sodium chloride. Ocean water gets it's high salt level from the ocean floor eroding. This salt level also makes oceans special, as only certain types of fish can survive inside of it. 

The density of the ocean is also dependent on the salt content inside of it. The higher the salt level, the denser the water. 

When ice is created on the surface of an ocean body, the currents are creating a mix of warm and cold water. The warm water is pushing itself to the top, and forcing the colder water downwards. When the colder water sinks low enough, then it freezes and rises to the surface. 

Because of the salt content, the freezing point of ocean water is also lower than of freshwater. The freezing point for ocean water is -2 Celsius. While freshwater is at 0. 

There is something called Tonicity that is important. This describes the different concentrations of salt that are scattered in and throughout the bodies of water. The water itself will try to even out these concentrations of salt, by moving towards the zones with the highest concentrations.However, if the salt levels get too high, any marine life living inside of it can be placed at risk.

The sub floors of the ocean also contain C02(carbon dioxide). This can also affect the surface or behavior of the oceans, as an abundance of carbon dioxide in the water can kill of species of marine life, and change ocean currents. Condensed methane also leaks out of the arctic and polar floors of the ocean. As the temperature rises around these methane storages, the more it rises into the ocean, causing more disturbances.

 

The more turbulent the water in an ocean body, or lake. The more damage and erosion is done to the underlying terrain. Rough water can cause volcanic collapses, underwater and regular landslides, and overall tearing of the seafloor.

There are four main section of ocean studies. I'll let you look into the details of them on your own, as I can't breakdown every section of study in detail. But here is an overlying summary of each.

Biological oceanography:  This is the study of all the biological organisms that can exist in the oceans.

Chemical oceanography: This is the study of the overall chemistry of the oceans. Ocean acidification is also studied under this branch of study. As well as the geo chemical cycles of the ocean.

Geological oceanography: This is the geological study of the oceans. Paleoceanography, which is the study of the history of the ocean, and plate tectonics also fit into this category.

Physical oceanography: This is the study of the ocean's current physical attributes. Whether that be Ocean currents, Ocean temperature, Ocean heat content, tides, internal waves, etc.

All of these sections of studies are important when you are building an ocean simulation. The more you know about what you are attempting to build, the more factors you can take into account. 

More Resources

Houdini Whitewater Node: https://www.sidefx.com/docs/houdini/shelf/whitewater.html

Houdini Whitewater Overview: https://www.sidefx.com/docs/houdini/fluid/whitewater.html

OD Force Whitewater Houdini 17: https://forums.odforce.net/topic/40290-whitewater-houdini-17/

how-to-get-whitewater-by-mixing-flip-and-smoke-velocities-in-houdini:

https://lesterbanks.com/2019/08/how-to-get-whitewater-by-mixing-flip-and-smoke-velocities-in-houdini/

Deborah Fowler: https://www.deborahrfowler.com/HoudiniResources/Fluids-liquid.html

Erik Vandertier: https://erikvandertier.com/def/blog/houdini/shades-of-white-water/

Igor VFX: http://www.igorfx.com/wedge/

Real world Ocean Differences: https://sciencing.com/four-between-ocean-fresh-water-8519973.html

Idaho National Library: https://inldigitallibrary.inl.gov/sites/STI/STI/6269590.pdf

Ocean Physics Group: http://valdez.seos.uvic.ca/~jklymak/pages/publications.html

Tasmanian Internal Tide Modelling Paper: http://valdez.seos.uvic.ca/~jklymak/ttide15/

Oregon State University: https://ceoas.oregonstate.edu/research/poa/

Oceanography: https://en.wikipedia.org/wiki/Oceanography

Marine Physics and Ocean Climate: https://www.noc.ac.uk/science/research-areas/marine-physics-ocean-climate