Table of Contents

Class PuddlecraftRendererFeature

Namespace
DFA.Puddlecraft

URP renderer feature that draws Puddlecraft's rain and puddles. Add it to every renderer that should show them. With Overlay shading it projects the placed puddles onto the scene depth and lights them (darkening, highlights, ripples, reflection probes); with Materials shading it leaves the water to your materials. In the editor, the Scene view can instead draw each splat as a heatmap for placement.

[DisallowMultipleRendererFeature("Puddlecraft")]
[Tooltip("Draws Puddlecraft puddles.")]
public sealed class PuddlecraftRendererFeature : ScriptableRendererFeature, IDisposable
Inheritance
ScriptableRendererFeature
PuddlecraftRendererFeature
Implements

Properties

quality

How much Puddlecraft spends on the GPU on this renderer. Lower tiers cap map resolutions, rain ring layers and mist, and Low turns off ripples from footsteps, drips and spouts.

public PuddlecraftQuality quality { get; set; }

Property Value

PuddlecraftQuality

renderPassEvent

When in the frame puddles are drawn. Keep it after opaques, they need the depth texture.

public RenderPassEvent renderPassEvent { get; set; }

Property Value

RenderPassEvent

shading

How puddles reach the screen: drawn over the image, or by your materials.

public PuddleShading shading { get; set; }

Property Value

PuddleShading

wetNormals

Forward and Forward+: whether Puddlecraft/Lit (Wet) draws the wet normal into the camera normals texture, with its smoothness in alpha, for screen-space reflections. Costs about as much as the wet material again whenever a depth-normals prepass runs. Off, the prepass writes the dry normal and an alpha of 0, as URP's materials do.

public bool wetNormals { get; set; }

Property Value

bool

wetnessMapArea

Materials mode: side of the square around the camera that puddles show in, in metres (8 to 512).

public float wetnessMapArea { get; set; }

Property Value

float

wetnessMapResolution

Materials mode: texels along each side of the wetness map. wetnessMapArea divided by this is the finest puddle detail. The Medium and Low quality tiers cap it at 512.

public PuddlecraftResolution wetnessMapResolution { get; set; }

Property Value

PuddlecraftResolution