Snow Simulations In Houdini

Snow: The Real Life Simulation 

Snow....We all know what this my Canadian Peers. The blockade that creates the wonderful simulation of you shoveling your driveway. But how does it form, and what is it other than a heap of wet toboggan mess?

Snow is primarily made up of ice crystals, that form when the atmospheric temperature drops below freezing. However, snow only reaches the ground when the overall temperature of the ground matches the air or is cooler. Otherwise, the ice crystals will just stay in the air, melt, or be re-accumulated into the atmosphere. If the ground temperature is still above freezing, the snow will still fall. But it will evaporate before it hits the ground.

There are three different types of snow:

Snowflakes: Most common type of snow. Your basic ice crystal.

Graupel: These resemble ice pellets. They are crumbly and large. They are formed when the overall atmospheric temperature is just below zero, and the crystals do not have the chance to freeze properly.

Sleet: This happened when rain in the midst of falling, freezes into ice. 

As my Canadian peers will joke: It's never too cold to snow. This is scientifically true. So the joke is on all of us. As long as there is water particles in the air, and below freezing; it will snow. This creates interesting scenarios where in places such as Antarctica, there are places called Cold Deserts. Where even if it is incredibly cold, there is no snowfall because of the lack of water and moisture in the air.

The size of the snow is also dependent on the environment that the snow was in when it fell. Higher winds in the snowfall will break apart the snow crystals, and warmer temperatures will melt crystals. And vice versa. The colder it is, the larger the crystals will be as well.

Snow is also hugely important for creating and tracking water supplies all over the world. Scientists track snowfall all over the world as a tool for understanding and predicting droughts in the coming year. 

Fun fact, snow can also be classified as a mineral. Because minerals as defined as something that is a naturally occurring homogeneous solid, a snow crystal can also be defined as the same thing. As it is also naturally occurring and made up of only frozen water particles.

Building the Simulation: Houdini

The structure of snow is where we need to start, so we understand how the light is going to reflect and refract. As well as, modeling, siming, and rendering of our snow. 

 

Snow is primarily made of ice crystals, which are hexagonal in shape when they descend through the atmosphere.. They refract light like a prism ,and can create halos of light.(Have fun with your bokehs) If you are creating a blizzard, make sure your snow is a hexagon. As the snow falls, the ice crystals smooth out, and create facets, which then become your standard snowflake. I won't recommend modelling fully detailed snowflakes for huge simulations. But if you are doing a detailed simulation, go for it.  When snowflakes hit the ground they crumble, and condense into clumps of grains. So in some cases for building snow in Houdini, use the grain solver. That might create better results. Keep your snow a sphere shape most of the time if you are planning to make snow clumps on the ground.

 

If you would like to create very wet and dense snow, consider increasing the grain size of your snow simulation. This will increase the weight of your snow sim, and make the snow thicker.

For snow sims you can also try creating a VDB volume, and controlling the voxels to travel where you would like them to go. This can work well if you like to work with VEX or Volume Vops.

Rendering and Texturing

So how do we render and shade our snow? There are many different options. For shading we could use a Billowy Smoke Shader, or a Uniform Volume Shader. We can also add motion blur to our render. But if you are compositing, I would recommend doing that in the comp stage.

 

Lighting the snow is another whole step altogether. Remember to keep the lighting of your plate in mind, time of day, and control how ambient and dark your shadows are. When light hits and refracts off of snow, it bounces back irregularly. It also hits the material that the snow is resting on or behind. So the color of the objects in the scene will bleed through the snow.

 

Rendering is another challenge as it depends on if you are rendering volumetric snow, the points/particles of the snow, or the geometry. It is recommended you render the points of the snow or the geometry attached to them, if you are build geometric snow. Sometimes when you mesh your snow particles together it can make it harder to render or shade.

 

When rendering or editing your snow material, keep your eyes on the scatter phase of the snow. You need Houdini to sense and render the particles of clumps of snow, or the blizzard you are creating.

 

PBR rendering will probably be your best bet. :)

Further Reading

odforce Forum: https://forums.odforce.net/topic/29567-snow-rendering/  

Reddit: https://www.reddit.com/r/realflow/comments/7j7uxv/tips_for_rendering_snow_granular_sims/  

Rendering realistic Snow, UofChttp://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.92.125&rep=rep1&type=pdf  

National Snow and Ice Data Center, How Snow Forms: https://nsidc.org/cryosphere/snow/science/formation.html

National Snow and Ice Data Center, All about Snow: https://nsidc.org/cryosphere/snow