应根据项目类型以及目标硬件,确定哪种渲染路径最适合您的通用渲染管线 (URP) 项目。
如果场景中的光源不多,或者在移动平台或低端平台上进行渲染,请使用默认的前向渲染路径,因为 Unity 会限制光源数量和每像素光源数量。
在以下情况下选择 Forward+ 渲染路径:
在以下情况下选择延迟渲染路径:
避免将具有 Subtractive 或 Shadowmask Lighting Mode 的光源与延迟渲染路径一起使用,因为这些光源仅针对前向渲染路径进行了优化。
在以下情况下,Unity 会回退到不同的渲染路径:
下表显示了 URP 中的渲染路径之间的差异。
| 功能 | 前向 | Forward+ | 延迟 | ||||
|---|---|---|---|---|---|---|---|
| 移动平台性能 | 性能影响低。 | 性能影响低。 | 性能影响高,因为 Unity 会添加额外的渲染通道来渲染 G 缓冲区。 | 每对象渲染通道数 | 1 | 1 | 1 |
| 每对象实时光源数 | 9 | 无限制 | 对于不透明对象无限制。对于透明对象为 9。 | ||||
| 每摄像机实时光源数 | 最多 257 个,具体取决于平台。 | 最多 256 个,具体取决于平台。Forward+ 渲染路径以相同的方式处理主光源和附加光源,因此每个摄像机的限制减少一个光源。 | 最多 257 个光源,具体取决于平台。 | ||||
| 每顶点光源 | 是 | 否 | 否 | ||||
| 禁用主光源 | 是 | 否 | 否 | ||||
| 每个像素法线 | 准确,不进行编码。 | 准确,不进行编码。 | 编码的法线不太准确,或者可以选择更准确但较慢的法线。有关更多信息,请参阅延迟渲染路径中的 G 缓冲区布局。 | ||||
| 多重采样抗锯齿 (MSAA) | 是 | 是 | 否 | ||||
| 摄像机叠加 | 是 | 是 | 是,但基础摄像机使用延迟渲染路径,叠加摄像机使用前向渲染路径。有关更多信息,请参阅摄像机渲染类型简介。 |