By default, Global Snow does not differentiate between static and moving objects. Snow on moving objects can look unnatural as the character or vehicle animates. Follow these steps to handle them correctly:
Remove global snow from the object so it does not receive the scene-wide snow effect:
GlobalSnowIgnoreCoverage script to the GameObject.If you want the object to display snow that stays stable as it moves, assign the GlobalSnow/Moving Object Snow/Opaque shader to its materials. This Standard-based shader integrates snow features directly, so the snow does not shift with animation.
| Shader Parameter | Description |
|---|---|
| Snow Tint Color | Tint applied to the snow on this object. |
| Coverage | Amount of snow coverage (0–1). |
| Snow Scale | Scale of the snow noise pattern. |
| Scatter | Randomness of snow distribution. |
For vehicles, add GlobalSnowColliderExtraInfo to the vehicle root. This script detects wheel-ground contact points and reports them to Global Snow for terrain marks.
To make a humanoid character leave realistic footprints:
GlobalSnowColliderExtraInfo to each foot collider with Is Footprint enabled.Snow Volumes are trigger zones that disable snow when the camera enters them — perfect for indoor areas, caves, or shelters.
GlobalSnow Volume prefab from GlobalSnow/Resources/Prefabs into your scene.The Coverage Mask allows you to paint snow on or off using a texture. The alpha channel controls opacity: 1 = full snow, 0 = no snow.
| Parameter | Description |
|---|---|
| Coverage Mask | The alpha texture. Mapped to world space at the specified center and size. |
| World Center | Center position of the mask in world coordinates. |
| World Size | Size in meters. A size of 2000 means coverage from -2000 to +2000. |
Enable the Mask Editor section in the inspector to paint directly in the Scene View:
GlobalSnowForwardOptions.cginc or GlobalSnowDeferredOptions.cginc and uncomment the #define GLOBALSNOW_MASK line.
Attach this script to any GameObject for fine-grained control:
| Option | Description |
|---|---|
| Block Snow | Object acts as a blocker, preventing snow beneath it (shelters, roofs). |
| Receive Snow | Object and its children receive snow coverage. |
| Use Fast Mask Shader | Uses an optimized mask shader for exclusion. Disable for vertex-animated objects. |
| Exclusion Cut Off | Alpha threshold below which snow is excluded. |
If your scene does not need occlusion (e.g., a flat terrain with no overhangs), you can disable the zenithal depth pass entirely:
GlobalSnowDeferredOptions.cginc or GlobalSnowForwardOptions.cginc and comment out:// #define USE_ZENITHAL_DEPTH
All Global Snow properties are animatable. For quick transitions between two snow configurations, use the GlobalSnowLerp script:
Global Snow Lerp component to any GameObject.| Parameter | Description |
|---|---|
| Target Global Snow | Auto-detected at Start. Assign manually if you instantiate the camera after scene load. |
| Transition | Blend factor: 0 = Profile 1, 1 = Profile 2. |
| Left / Right Key | Keyboard shortcuts to decrease/increase the transition value at runtime. |
| Profile 1 / Profile 2 | Complete snow configuration presets to lerp between. |
If you exclude characters that use VertExmotion from snow coverage, enable the integration to avoid artifacts:
GlobalSnowDeferredOptions.cginc (deferred) or GlobalSnowForwardOptions.cginc (forward).#define ENABLE_VERTEXMOTION_INTEGRATION
#include "Assets/VertExmotion/Shaders/VertExmotion.cginc"
Global Snow works out of the box with Vehicle Physics Pro:
GlobalSnowColliderExtraInfo to the vehicle root to detect wheel contacts.GlobalSnowIgnoreCoverage).GlobalSnow/Moving Object Snow/Opaque shader to vehicle materials for stable snow on the body.Help us improve this documentation page.