URP 12 (Unity 2021.2) 的新增功能
本节包含有关 URP 12 中的新功能、改进和已修复问题的信息。
如需查看 URP 12 中所做的更改的完整列表,请参阅变更日志。
功能
本节包含此版本中的新功能的概述。
场景调试视图模式
此版本中的改进使 URP 的场景调试视图模式更接近于内置渲染管线中提供的选项。此版本中还包含 Render Pipeline Debug 窗口作为 URP 的新调试工作流程。用户可以使用 Debug 窗口来检查所渲染的材质的属性、光线如何与这些材质交互,以及如何执行阴影和 LOD 操作以生成最终帧。
反射探针混合和盒体投影支持
此图显示了使用反射探针实现的反射。
此版本添加了反射探针混合和盒体投影支持,因此可以使用探针获得更好的反射质量,并使 URP 在功能性上更接近于内置渲染管线。
有关 URP 中的反射探针的更多信息,请参阅反射探针页面。
URP 延迟渲染路径
使用延迟渲染路径的示例场景。
URP 延迟渲染路径使用这样一种渲染技术:在渲染所有顶点着色器和像素着色器后,使用单独的渲染通道在屏幕空间中执行光照着色。延迟着色会在光照计算中排除场景几何体,因此仅针对每个光源实际影响的可见像素计算该光源的着色。与按对象进行的前向渲染相比,使用这种方法时,Unity 可以有效提高场景中渲染的光源数量。
有关此功能的更多信息,请参阅延迟渲染路径页面。
URP 贴花系统
场景中的贴花投影器 (Decal Projector)。
新的贴花系统允许将贴花材质投影到场景的表面上。投影到场景中的贴花将环绕网格并与场景的光照交互。贴花可用于向场景添加额外的纹理细节,尤其是为了打破材质的重复性和细节模式,可以使用贴花。
有关此功能的更多信息,请参阅贴花渲染器功能页面。
深度预通道(深度引导模式)
此版本添加了对深度预通道的支持;在这种渲染通道中,所有可见的不透明网格都会被渲染以填充深度缓冲区(不会产生片元着色成本)。任何后续颜色通道都可以重用此深度缓冲区。深度预通道可以消除或显著减少几何渲染过度绘制。
要启用深度预通道,请将 Depth Priming Mode 设置为 Auto 或 Forced (URP Asset > Rendering > Rendering Path, Forward > Depth Priming Mode)。
Depth Priming Mode 属性。
URP 光源剪影
URP 光源剪影功能实现了一种技术来屏蔽或滤除出射光的强度以便产生图案化光照。此功能可用于改变投射光的外观、形状和强度以获得艺术效果,或以最低限度的运行时性能影响为代价模拟复杂的光照情景。
渲染管线转换器 (Render Pipeline Converter)
一个将内置渲染管线迁移到 URP 的新转换器框架使迁移过程更加稳健,并支持对材质以外的元素进行转换。
要打开 Render Pipeline Converter 窗口,请选择 Window > Rendering > Render Pipeline Converter。
有关更多信息,请参阅渲染管线转换器 (Render Pipeline Converter)。
运动矢量
通过对运动矢量的支持,可以使用速度缓冲区来捕获和存储对象从一帧到另一帧的每像素屏幕空间运动。
URP 体积系统更新频率
通过 URP 体积系统更新频率,可以根据内容和目标平台的要求优化体积 (Volumes) 框架的性能。
URP Global Settings
在 URP Global Settings 部分中可以为 URP 定义项目范围内的设置。在此版本中,URP Global Settings 部分包含光源层的名称。
光源层
光源层可用于遮盖场景中的某些光源以影响特定网格。分配给特定光源层的光源仅影响分配给同一层的网格。
有关更多信息,请参阅光源层页面。
新的 URP 包示例
Package Manager 中提供了新的 URP 示例。这些示例展示了 URP 功能的用例、它们的配置以及在一个或多个场景中的实际应用。
注意:在当前的 URP 版本中,有一个已知问题会导致渲染效果无法正常使用。请点击此链接阅读该问题的描述及其解决方法。
镜头光晕 (Lens Flare) 系统
使用镜头光晕的示例 URP 场景。
此版本引入了新的镜头光晕系统。镜头光晕模拟在摄像机镜头内折射光线的效果。它们用于表示非常明亮的光源,或者还可以更巧妙地用于为场景添加更多气氛。这个新系统与内置渲染管线中的系统相似,支持通过改进的用户界面来叠加光晕并添加了更多选项。
Enlighten 实时 GI
使用 Enlighten 实时 GI 的示例场景。
Enlighten 实时 GI 可以通过更动态的光照效果来丰富您的项目,例如,通过移动光源来影响场景中的全局光照。我们已将 Enlighten 实时 GI 的平台范围扩展到 Apple Silicon、Sony PlayStation(R) 5 和 Microsoft Xbox Series X|S 平台。
SpeedTree 8 植被
此版本为 URP 添加了对 SpeedTree 8 植被的支持,包括对使用 SpeedTree 风系统的动画植被的支持。URP 使用 Shader Graph 来支持 SpeedTree 8;有关更多信息,请参阅 SpeedTree Sub Graph 资源页面。
Shader Graph:覆盖材质属性
在此版本中,以 URP 作为目标的 Shader Graph 堆叠具有 Allow Material Override 属性。此属性适用于光照 (Lit) 和无光照 (Unlit) 材质类型。
启用此属性后可以覆盖材质上的某些表面属性。在此版本之前,这些属性是在 Shader Graph 中设置的。
改进
本节包含此版本中的主要改进的概述。
SSAO 改进
此版本带来了多项 SSAO 改进:
SSAO 支持延迟渲染路径。
法线贴图有助于该效果。
SSAO 支持带有无光照着色器的粒子系统和表面。
性能改进。
SRP 设置工作流程改进
SRP 设置工作流程改进是一系列 UI/UX 改进,旨在影响工作流程并确保 SRP 渲染管线之间的一致性。对于本次迭代,重点主要是在 URP 和 HDRP 之间将光源和摄像机组件协调一致。这些更改包括标题设计、子标题设计、展开箭头、设置顺序、命名和相关字段缩进方面的协调统一。虽然这些主要是外观上的变化,但有很大的影响。
在启用 MSAA 的情况下对深度缓冲区进行更优化的处理
以前,在启用 MSAA 的情况下,Unity 会执行额外的深度预通道来填充深度缓冲区。 在此版本中,启用 MSAA 后,Unity 不会执行额外的深度预通道,而是重用来自不透明通道的深度纹理(注意:这对除 GLES3 平台之外的所有平台都有效)。
SwapBuffer
在此版本中,通用渲染器可以在后端管理和操作多个摄像机颜色缓冲区。
现在可以在可编程渲染器功能中使用新的 ScriptableRenderPass.Blit 方法将效果应用到颜色缓冲区,而无需您自己管理和处理摄像机颜色缓冲区。您可以使用该方法编写读取和写入摄像机颜色缓冲区的效果。
URP 2D 渲染器改进
此版本包含多项 URP 2D 渲染器改进:
URP 中新增的场景视图调试模式让 2D 开发者可以访问以下视图:Mask、Alpha channel、Overdraw 或 Mipmaps。精灵遮罩 (Sprite Mask) 功能经过调整,现在可以在 SRP 中正常工作。
现在可以使用渲染器功能添加自定义通道,从而对 2D 渲染器进行自定义。
2D 光源现在集成在 Light Explorer 窗口中,不再标记为实验性 (Experimental)。
2D 阴影优化。
现在可以通过 Shader Graph 中的 2D Light Texture 节点访问由 2D 光源生成的 2D 光源纹理。
VFX Graph 现在支持 2D 无光照着色器。
添加了一个新的 2D URP 默认模板。它包含一组经过验证的 2D 工具,因此,您可以通过整个 2D 工具集更快地加载新项目。
精灵图集 v2 支持文件夹。
提供新的 API 在多个图集中查找单个精灵的重复精灵,查询 MasterAtlas 和 IsInBuild。
2D Pixel Perfect 的 Inspector UI 具有更直观的设置显示。
2D PSD Importer 具有新的 UX 改进,可以更好地控制 Photoshop 图层,并提供了精灵名称映射。
2D 动画更新包括骨骼颜色,现在可以在可见性面板中设置这些颜色。
2D 瓦片地图改进。
已解决的问题
如需查看 URP 12 中已解决的问题的完整列表,请参阅变更日志。
已知问题
如需了解 URP 12 中的已知问题,请参阅已知问题一节。