This page describes the URP Universal Renderer settings.
For more information on rendering in URP, also check Rendering in the Universal Render Pipeline.
The URP Universal Renderer implements the following Rendering Paths:
Forward Rendering Path.
The following table shows the differences between the Forward and the Deferred Rendering Paths in URP.
Feature | Forward | Forward+ | Deferred |
---|---|---|---|
Maximum number of real-time lights per object. | 9 (1 Main Light, and 8 Additional Lights) | Unlimited. The per-Camera limit applies. | Unlimited. The per-Camera limit applies. Transparent objects are rendered using the Forward pass, where the maximum number of real-time lights is 9 (1 Main Light, and 8 Additional Lights). |
Per-pixel normal encoding | No encoding (accurate normal values). | No encoding (accurate normal values). | Two options:
|
MSAA | Yes | Yes | No |
Vertex lighting | Yes | No | No |
Camera stacking | Yes | Yes | Supported with a limitation: Unity renders only the base Camera using the Deferred Rendering Path. Unity renders all overlay Cameras using the Forward Rendering Path. |
There is a per-Camera limit which applies to the number of real-time lights in all rendering paths.
As for the Additional Lights, the limit applies only to the Lights visible to the Camera.
The per-Camera limits for different platforms are:
Desktop and console platforms: 1 Main Light, and 256 Additional Lights.
Mobile platforms: 1 Main Light, and 32 Additional Lights.
OpenGL ES 3.0 and earlier: 1 Main Light, and 16 Additional Lights.
To find the Universal Renderer asset that a URP asset is using:
Select a URP asset.
In the Renderer List section, click a renderer item or the vertical ellipsis icon (⋮) next to a renderer.
This section describes the properties of the Universal Renderer asset.
This section contains properties that define which layers the renderer draws.
| Property | Description | |:-|:-| | Opaque Layer Mask | Select which opaque layers this Renderer draws | | Transparent Layer Mask | Select which transparent layers this Renderer draws |
This section contains properties related to rendering.
| Property | Description |
|:-|:-|
| Rendering Path | Select the Rendering Path.
Options:
This section contains properties related to URP’s Native RenderPass API.
| Property | Description |
|:-|:-|
| Native RenderPass | Indicates whether to use URP’s Native RenderPass API. When enabled, URP uses this API to structure render passes. As a result, you can use programmable blending in custom URP shaders. For more information about the RenderPass API, refer to ScriptableRenderContext.BeginRenderPass.
Note: Enabling this property has no effect on OpenGL ES. |
This section contains properties related to rendering shadows.
| Property | Description | |:-|:-| | Transparent Receive Shadows | When this option is on, Unity draws shadows on transparent objects. |
This section contains Render Pipeline properties that this Renderer overrides.
With this check box selected, the Renderer processes the Stencil buffer values.
For more information on how Unity works with the Stencil buffer, refer to ShaderLab: Stencil.
In URP, you can use bits 0 to 3 of the stencil buffer for custom rendering effects. This means you can use stencil indices 0 to 15.
This section contains settings related to backwards compatibility.
| Property | Description |
|:-|:-|
| Intermediate Texture | This property lets you force URP to renders via an intermediate texture.
Options:
ScriptableRenderPass.ConfigureInput
method to determine automatically whether rendering via an intermediate texture is necessary.ScriptableRenderPass.ConfigureInput
. Using this option might have a significant performance impact on some platforms.This section contains the list of Renderer Features assigned to the selected Renderer.
For information on how to add a Renderer Feature, check How to add a Renderer Feature to a Renderer.
URP contains the pre-built Renderer Feature called Render Objects.