Brute Force - Snow & Ice Shader Documentation

6. Snow & Ice Properties

SnowDoc13.jpg

The Snow asset is controlled entirely through the material property block, I suggest toying with the values to familiarize yourself with them. The material being very long I categorized the fields into:

Snow Textures || Snow Values || Ice Textures || Ice Values || Lighting || Tessellation || Pragmas

I will describe the important parameters in order:

|| Snow Textures ||

- Snow Albedo: A colored texture to control the snow color, use this field to add some organic noise

- Overall Scale: The scale parameter controlling every texture coordinates except the snow displacement

- Snow Little Spec: The B&W texture controlling the specular intensity where the light reflects on the snow surface

- Snow Displacement Texture: The texture controlling the displacement of the snow vertex

- Displacement Offset: The value differentiating the height between snow and ice, 0 = no differences

- Displacement Color Multiplier: The parameter multiplying the value (color) difference based on displacement height

- Displacement Shadow Multiplier: The parameter multiplying the shadow value based on displacement height

- Up Vector: The higher this value is the more the displacement will move towards the world upward vector

- Normal Vector: The higher this value is the more the displacement will move towards the vertex normal

- Snow Transition: The texture controlling the transition shape between snow and ice

|| Snow Values ||

- Mount Color: The color tint of the pulled up snow based on interactive effect (green)

- Dig Color: The color tint of the dug up snow based on interactive effect (blue)

- Normal Effect Depth: The multiplier offset of the interactive effect, does not scale with the RenderTexture dimension if you do not understand what it does leave it between 0.10-0.20

- Normal Effect Strength: The value multiplying the overall interactive effect

- Mount/Dig Snow Strength: The vertex displacement multiplier of the respective effect (Vertex position only)

- Snow Scale: The scale parameter controlling the snow texture coordinates

|| Ice Textures ||

- Parallax Ice Texture: The RGB texture controlling the parallax mapping of the ice; Red = 1st layer / Green = 2nd layer / Blue = 3rd layer

- Parallax Fade Strength: The separate intensity values of each parallax layers;

       X = The overall intensity value of all the layers (leave it to 0 if possible, goes from -1 to 1)

       Y = The 1st layer intensity

       Z = The 2nd layer intensity

       W = The 3rd layer intensity

       Every values can go beyond -1 and +1 but I don't recommend doing so, keep those values fairly low

- Parallax Offset Scale: The depth multiplier of the parallax effect, the higher it is the deeper the effect looks

|| Ice Values ||

- Parallax Color: The tint color of the ice based on parallax effect, it represents the deepest color of the parallax

- Parallax Color Scale: The general color multiplier of the parallax color based on parallax depth

- Ice Trail Color: The tint of the interactive effect on the ice (color is reversed; white = very dark tint trail)

- Ice Scale: The scale parameter controlling the ice texture coordinates

|| Lighting ||

- Projected Shadow Color: The color of the snow & ice shadows

- Reflection Opacity: The opacity of the reflected environment cubemap onto the ice

- Rim Ice Color: The tint color of the ice rim light (alpha controls the scale)

- Additional Lights Intensity: The additional lights (points, spots) intensity multiplier, only works with additional lights 

|| Tessellation ||

- Tessellation Ice: The tessellation control value of the ice, 1 = No Tessellation | 100 = maximum Tessellation, in the majority of uses you SHOULD leave it to 1

- Tessellation Snow: The tessellation control value of the snow, a good optimized value should be between 20 and 50

|| Pragmas ||

- Is Ice: If enabled it will turn the whole mesh into ice independently from vertex color

- Is Additive Snow: If enabled it will activate the additive snow feature culling the ice, do not enable this feature by itself instead you should use the Additive Snow component, more details here

- Use RT: If enabled it will activate the interactive feature, disable it if you don't intend to use the interactive part

- Is Terrain: If enabled it will activate the Terrain feature, do not enable this feature by itself instead you should use the Snow Terrain component, more details here

- Use World DisplacementThe If enabled it will project the snow displacement texture in world coordinates independent from mesh uv, turn it off if you want to use your mesh uvs for snow displacement

You can switch textures around or try different materials from the large collection in the package:

You can create your own textures for any texture slots, if you want to make your own Parallax Ice texture keep in mind that the color channels should be treated separately.

SnowDoc21.jpg

If you want to create your own materials here is the list of the Snow & Ice shaders:

SnowDoc22.jpg

SnowIce: The standard Snow & Ice shader

SnowIceNoTessellation: The same as the above but without the vertex tessellation feature, use this variant to build for WebGl or low-end mobile; see more about WebGl and Mobile Build