包含此页的版本:
不含此页的版本:
在开发早期,为您的项目选择正确的 Unity 渲染管线非常重要。
不同渲染管线 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
请参阅术语表具有不同的功能和不同的性能,因此它们最适合不同的游戏、应用程序和平台。
将项目从一个渲染管线切换到另一个渲染管线可能非常耗时,尤其是在项目开发过程中很长的情况下。不同的渲染管线使用不同的着色器在 GPU 上运行的程序。更多信息
请参阅术语表并且可能没有相同的功能。
该表显示了管道之间的一些高级差异,以帮助您在开始时为您的项目选择正确的管道。
注意:您不能同时使用通用渲染管线和高清渲染管线 (HDRP)。它们都是使用可编写脚本的渲染管线(SRP)构建的,但它们的渲染路径和光源模型不同。
| 特征 | 通用渲染管线(URP) | 高清渲染管线 (HDRP) | 内置渲染管线 |
|---|---|---|---|
| 目标用途 | 需要跨所有平台进行渲染可扩展性的项目,尤其是基于图块的延迟渲染 (TBDR) 平台和不受限制的 VR 平台。 需要扩展和自定义渲染管线的项目。 2D 和 3D 项目。 |
需要在高端平台上 进行照片级真实感和高保真渲染的项目 3D 项目 |
需要跨所有平台呈现可扩展性的项目。 2D 和 3D 项目。 |
| 平台支持 | 支持所有 Unity 支持的平台 专注于基于图块的延迟渲染 (TBDR) 平台和不受限制的 VR 平台的效率 |
支持桌面、Xbox 和 PlayStation 平台 专注于高效使用高级 GPU 硬件功能,例如异步计算着色器和光线追踪(如果硬件支持)。 |
支持所有 Unity 支持的平台 |
| 源代码访问 | 主要是 C# 对 GitHub 上 URP 源代码的公开访问。你还可以使用URP作为基础 创建自定义管线与内置渲染管线相比,源代码更易于阅读、更改和扩展 |
主要是 C# 对 GitHub 上 HDRP 源代码的公开访问。您还可以使用 HDRP 作为基础 创建自定义管线与内置渲染管线相比,源代码更易于阅读、更改和扩展 |
主要是通过购买源代码访问权限进行 C++ 私有访问 |
| 管道扩展 | 管道提供的 API 和注入点,或者您可以修改公开可用的源代码 比内置渲染管道更容易扩展 |
管道提供的 API 和注入点,或者您可以修改公开可用的源代码 比内置渲染管线更容易扩展,但比 URP 更困难,因为 HDRP 很复杂并且具有高级功能 |
管道提供的 API 和注入点 |
| 通过艺术家工具进行定制 |
着色器图表,可用于自定义着色、材质和屏幕空间效果 内置粒子系统,可用于自定义视觉效果。有限自定义 VFX图表,可用于设计视觉效果,从简单的常见粒子行为到在GPU上运行的复杂模拟。 |
着色器图表,可用于自定义着色、材质和屏幕空间效果 内置粒子系统,可用于自定义视觉效果。有限自定义 VFX图表,可用于设计视觉效果,从简单的常见粒子行为到在GPU上运行的复杂模拟。 |
着色器图表,可用于自定义着色、材质和屏幕空间效果 着色器图表不会收到内置渲染管线支持的更新,除了现有功能的 错误修复外 内置粒子系统,可用于自定义视觉效果。有限的定制 |
| 通过手工编码着色器进行自定义 | HLSL 着色器和源代码中的 URP 着色器,可自定义 | HLSL 着色器和源代码中的 HDRP 着色器(您可以自定义 )手动编码着色器仅建议高级用户使用,因为 HDRP 着色器很复杂且具有高级功能 |
HLSL 着色器和表面着色器 |
| 照明 | 专为逼真和风格化照明 而设计 基本 PBR 和一些高级 PBR,例如透明涂层 更容易自定义自定义照明模型,例如赛璐珞着色 |
专注于照片级真实感和物理精确的照明,内置支持物理光单元 基本和高级 PBR。例如,透明涂层、皮肤、头发、眼睛、次表面散射和水 高级屏幕空间和体积效果 更难自定义自定义照明模型,例如赛璐珞着色 |
专为逼真和风格化照明 而设计基本的基于物理的渲染 (PBR) 更容易自定义自定义照明模型,例如卡通着色 |
| 性能 | 支持静态批处理和动态批处理 使用可编写脚本的渲染管线(SRP)批处理程序 进行 高级绘制调用批处理与 BatchRenderer 组 API 和实体兼容 |
支持静态批处理 使用可编写脚本的渲染管线(SRP)批处理程序 进行 高级绘制调用批处理与BatchRenderer组API和实体兼容 |
支持静态批处理和动态批处理 |
有关哪个管道与哪些功能兼容的详细信息,请参阅渲染管道功能比较,以帮助您为项目选择正确的管道。