Work Tech art and tools

Dynamic Snow Footprints

Snow that keeps every step. The same setup handles sand, mud and wheel tracks.

Project
Dynamic Snow Footprints
Studio
FutureGames (personal R&D)
Years
2021
Engine
Unreal Engine 4
Role
Technical art and VFX
Team
Solo
Status
Study
00:00:00:00

Paragon's Revenant and a horse in Unreal Engine 4. The breakdown runs through the passes, in the order they were built. · Step a frame with ← → · 30 fps

Problem

Walking through deep snow in Red Dead Redemption 2 feels heavy because the ground keeps every step. I wanted that in Unreal Engine 4: trails that form wherever a character or an animal walks, stay there, and blend into the snow around them.

Constraints

  • Anything that moves should leave a trail: the player, other characters, a horse.
  • Steps have to accumulate, not vanish when the character moves on.
  • The ground deforms without tessellation in the first version.
  • One setup for snow, sand, mud and wheel tracks.

What I built

A scene capture looks straight down at the ground: orthographic, 256 units wide, writing scene depth into a render target. Anything that should leave a trail renders into Custom Depth, and a depth-test material keeps only what is close to the ground. I tried two capture methods and kept the one that tracked moving objects most accurately and cheaply.

Each pixel's distance to the ground. Objects that should leave a trail render into Custom Depth; the material subtracts the ground's scene depth.
The capture is orthographic, 256 units wide. A material parameter collection stores the width so the landscape can find its UVs.

The capture overwrites itself every frame, so it feeds a second render target, a buffer, that keeps every step. The capture follows the player in discrete steps, and the buffer shifts by the same distance, so old prints stay where they were made.

The buffer. Every tick the capture is drawn into a second render target, offset by how far the capture has moved.

The landscape material projects the buffer from world position, and the world displacement pushes the ground down. A snow-stack shader blurs the trail in eight directions and blends it with the untouched snow. Niagara adds falling snow and a burst of powder at every footstep.

Projecting the render target: world position minus the capture location, divided by the capture size. UVs outside 0 to 1 are masked out.
Snow stacking. The trail is blurred in eight directions and blended with the untouched snow, so the edges pile up.

I tested it with Unreal's mannequin, then with a Paragon character and a horse, in a scene built from Quixel Megascans.

The first test: Unreal's mannequin and a snowball, both leaving trails.

Result

The same setup covers snow, sand, mud and wheel tracks. It is still my most-liked post on ArtStation: 138 likes on 2 October 2026.

Credits

Epic Games
Paragon: Revenant, and the Unreal mannequin, used as test characters
Animal Pack Ultra 2
The horse used in the second test
Quixel Megascans
The test environment