Variety

Dynamic Rain Overlay

A material function that adds controllable rain to existing materials, with animated and static droplets, wetness and puddle overlays, and per-material tiling.

Dynamic Rain OverlayVariety

Resource overview

Dynamic Rain Overlay is a material function that plugs into existing materials and adds a controllable rain layer. Its parts are straightforward: a Global Rain Amount parameter for rain quantity, animated and static impact droplets, a macro wetness and puddle overlay, exposed tiling and intensity values, and optional inputs with default values. The function is meant to be dropped into a material and adjusted, not rebuilt from scratch for every surface.

The Global Rain Amount parameter

Rain quantity is handled through the Global Rain Amount material parameter. Once the function is connected to an existing material, that value controls how much rain the material shows. This keeps the rain level separate from the base material, so the surface can keep its existing treatment while the overlay changes the weather condition.

Tiling amounts and intensity are also exposed. Both can be tweaked for each material, which means a wall, floor, or prop does not have to share one universal rain scale. The function supplies the controls; the material decides how they are set. That per-material access is useful when surfaces in the same scene need different rain density or visual strength while still coming from the same overlay.

Animated and static impact droplets

Impact droplets come in two forms: animated and static. The animated droplets provide movement, while the static droplets hold their position as surface detail. Both are included in the function, so a material can use the moving impact state, the fixed droplet state, or refer to either without needing a separate droplet setup.

This split gives an artist a direct way to shape how rain reads on a surface. Animated impacts suggest active rainfall; static droplets suggest droplets that have settled. The two are material-level elements, so the same rain overlay can shift between those readings by using the supplied droplet types. The function does not force one look across every material that uses it.

Wetness, puddles, and smoothed normals

A macro wetness and puddle overlay sits alongside the droplets. This layer handles the broader wet look and the pooled areas rather than only the individual impact marks. Puddles automatically smooth the normals of the geometry underneath, changing how the surface responds in those areas. The smoothing is not locked; it can be adjusted to the user's liking.

For scene work, this is the part that helps a surface feel waterlogged rather than merely dotted with rain. The puddle overlay can be tuned separately from the droplet layer, and the normal smoothing gives the pooled regions their own surface behavior. Because the values are exposed, the same function can support a light dampness or a heavier puddle treatment depending on the material and the intended look.

Tiling controls and world-space seams

Tiling amounts are exposed for per-material adjustment. With tiling available directly in the function, the rain pattern can be scaled to the surface instead of accepting a single fixed repetition. Intensity is exposed the same way, so the visual strength of the overlay can be raised or lowered material by material.

World-space tiling can be used on static objects to prevent seams on UV borders. That is a specific option for static geometry where UV boundaries would otherwise interrupt the rain pattern. Using world-space tiling in those cases keeps the overlay continuous across the object. The function does not require it for every material; it is an available route for static objects where UV seams are a concern.

Optional inputs and default values

All inputs are optional. The material function has default values, and the user only needs to override those values when necessary. A material can therefore use the function without connecting every control, starting from the defaults and changing only what the look requires. This keeps the setup lean and makes the function easier to add to an existing material.

The optional structure also means the function can serve as a base rain layer before any custom tuning. Defaults handle the initial state; overrides handle the specific case. For a material that only needs a basic rain response, that is enough. For a material that needs different tiling, intensity, or puddle behavior, the exposed controls are there to adjust.

How the pieces work together in a material

The overlay is most useful when its parts are treated as a small set of material decisions. Global Rain Amount sets the amount. Animated and static droplets set the impact character. The macro wetness and puddle layer sets the broad wet coverage and normal smoothing. Tiling and intensity set the scale and strength. Optional inputs and defaults keep the initial setup from becoming heavy.

Because the function hooks into existing materials, it can be added to surfaces that already have their own material treatment. The rain layer is the variable part; the underlying material remains the base. That makes the function suited to projects that need rain across several materials without rebuilding each one around a separate rain shader.

For an artist, the practical appeal is control at the material level. A single function carries rain amount, droplets, wetness, puddles, tiling, and intensity, with each material able to override what it needs. Static objects can use world-space tiling to avoid UV border seams. Defaults cover the rest. The package is set up to handle the rain overlay as an adjustable layer on top of existing material work.

Explore Similar Assets

Free resource

Get this resource

3DCGHUB is a discovery service. EduQuill provides the file, account, quotas and delivery.

Resource archiveDynamic Rain Overlay.7z

Related resources