通用渲染器
本页介绍 URP 通用渲染器设置。
有关 URP 中的渲染的更多信息,另请参阅通用渲染管线中的渲染。
渲染路径
URP 通用渲染器实现了两个渲染路径:
前向渲染路径。
渲染路径比较
下表显示了 URP 中的前向渲染路径和延迟渲染路径之间的差异。
功能 | 前向 | 延迟 |
---|---|---|
每个对象的实时光源的最大数量。 | 每个对象 9 个光源。 | 实时光源的数量不受限制。 |
每像素法线编码 | 无编码(准确的法线值)。 | 两个选项:
|
MSAA | 是 | 否 |
顶点光照 | 是 | 否 |
摄像机堆叠 | 是 | 支持,但有限制:Unity 使用延迟渲染路径仅渲染基础摄像机。Unity 使用前向渲染路径渲染所有叠加摄像机。 |
如何查找通用渲染器资源
要查找 URP 资源正在使用的通用渲染器资源,请执行以下操作:
选择一个 URP 资源。
在 Renderer List 部分中,单击某个渲染器项或某个渲染器旁边的垂直省略号图标 (⋮)。
通用渲染器资源引用
本节将介绍前向渲染器资源的属性。
Filtering
此部分包含用于定义渲染器绘制哪些层的属性。
属性 | 描述 |
---|---|
Opaque Layer Mask | 选择此渲染器绘制哪些不透明图层 |
Transparent Layer Mask | 选择此渲染器绘制哪些透明图层 |
Rendering
此部分包含与渲染相关的属性。
属性 | 描述 |
---|---|
Rendering Path | 选择渲染路径。 选项:
|
Depth Priming Mode | 指定何时执行深度引导 (depth priming)。深度引导是一种优化方法,用于检查 URP 在基础摄像机的不透明渲染通道中不需要渲染的像素。它会使用在深度预通道中生成的深度缓冲区。选项包括: • Disabled:URP 不执行深度引导。 • Auto:URP 为需要深度预通道的渲染通道执行深度引导。 • Forced:URP 始终执行深度引导。为此,它还会为每个渲染通道执行深度预通道。 仅当 Rendering Path 设置为 Forward 时,才会显示此属性 |
Accurate G-buffer normals | 指示是否使用更耗费资源的法线编码/解码方法来提高视觉质量。 仅当 Rendering Path 设置为 Deferred 时,才会显示此属性。 |
Copy Depth Mode | 指定在渲染管线中的哪个阶段将场景深度复制到深度纹理。选项包括: • After Opaques:URP 在不透明渲染通道后复制场景深度。 • After Transparents:URP 在透明渲染通道后复制场景深度。 注意:在移动设备上,After Transparents 选项可以显著提高内存带宽。 |
Native RenderPass
此部分包含与 URP 的 Native RenderPass API 相关的属性。
属性 | 描述 |
---|---|
Native RenderPass | 指示是否使用 URP 的 Native RenderPass API。启用此属性后,URP 使用此 API 来构建渲染通道。因此,可以在自定义 URP 着色器中使用可编程混合。有关 RenderPass API 的更多信息,请参阅 ScriptableRenderContext.BeginRenderPass。 注意:启用此属性对 OpenGL ES 没有影响。 |
Shadows
此部分包含与渲染阴影相关的属性。
属性 | 描述 |
---|---|
Transparent Receive Shadows | 启用此选项后,Unity 会在透明对象上绘制阴影。 |
Overrides
此部分包含该渲染器覆盖的渲染管线属性。
Stencil
选中此复选框后,渲染器将处理模板缓冲区值。
有关 Unity 如何使用模板缓冲区的更多信息,请参阅 ShaderLab:模板。
Compatibility
此部分包含与向后兼容性相关的设置。
属性 | 描述 |
---|---|
Intermediate Texture | 控制 URP 何时通过中间纹理进行渲染。选项:
|
Renderer Features
此部分包含分配给选定渲染器的渲染器功能列表。
有关如何添加渲染器功能的信息,请参阅如何向渲染器添加渲染器功能。
URP 包含预构建的名为渲染对象 (Render Objects) 的渲染器功能。