Unhinged - Rain and Weather System

Raindrop shader on window

Weather effects and Raindrop on camera lens screen effect

Noah's laptop screen shader and raindrops on window

Unhinged - Rain and Weather System

I built the textures, materials and shaders for the rain on windows and the surrounding weather effects. The raindrop shader adds animated droplets to any surface it's applied to. Some drops sit static on the glass while others move, driven by time and a temporal offset map that scales the height of each drop so it reads as hitting the surface, settling, then soaking in. Because the drops are offset rather than synced, the surface never looks like it's pulsing all at once.

The drops also respond to the player's flashlight. Each droplet carries its own normal map, and the same height value that animates the drop also scales those normals, so a drop that's still forming catches light differently from one that's fully settled. When the beam sweeps across a window, the drops light up individually and read as real geometry on the glass rather than a flat scrolling texture. Since the flashlight is the primary light source through most of the game, that lighting response is what sells the windows in a scene that's otherwise almost fully dark.

I then took the same approach into a post-process shader applied to the full screen, so it looks like rain is hitting the camera lens itself. Instead of lighting the drops, this version uses their normals to offset the screen UVs, refracting whatever the player is looking at as the drops sit and slide across the frame. The effect runs off a custom post-process volume, so it switches on when the camera enters an exposed area and switches off cleanly when it doesn't, which keeps the lens rain from bleeding into interior shots where it wouldn't make sense.

I authored the procedural raindrop textures and their normal maps in Substance Designer and built the shaders in Unity Shader Graph, which kept everything parameter driven so artists could tune drop size, density and speed per surface without new texture work.

More artwork