版本:Unity 6 (6000.0)
语言:English
选择渲染管线
渲染管线功能比较参考

选择渲染管线

在开发初期选择合适的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 和注入点
通过美术工具进行自定义 Shader Graph,可用于自定义着色、材质和屏幕空间效果

内置粒子系统,可用于自定义视觉效果。自定义有限

VFX Graph,可用于设计视觉效果,从简单的常见粒子行为到在 GPU 上运行的复杂模拟。
Shader Graph,可用于自定义着色、材质和屏幕空间效果

内置粒子系统,可用于自定义视觉效果。自定义有限

VFX Graph,可用于设计视觉效果,从简单的常见粒子行为到在 GPU 上运行的复杂模拟。
Shader Graph,可用于自定义着色、材质和屏幕空间效果

Shader Graph 除了对现有功能进行错误修复外,不会收到内置渲染管线支持的更新

内置粒子系统,可用于自定义视觉效果。自定义有限
通过手写着色器进行自定义 HLSL 着色器和源代码中的 URP 着色器,您可以对其进行自定义 HLSL 着色器和源代码中的 HDRP 着色器,您可以对其进行自定义

仅建议高级用户使用手写着色器,因为 HDRP 着色器复杂且具有高级功能
HLSL 着色器和表面着色器
灯光 专为逼真和风格化的灯光而设计

基本 PBR 和一些高级 PBR,例如清漆

更容易为自定义照明模型(例如卡通着色)进行自定义
专注于逼真的物理精确照明,并内置支持物理光单位

基本和高级 PBR。例如清漆、皮肤、头发、眼睛、次表面散射和水

高级屏幕空间和体积效果

更难为自定义照明模型(例如卡通着色)进行自定义
专为逼真和风格化的灯光而设计

基本基于物理的渲染 (PBR)

更容易为自定义照明模型(例如卡通着色)进行自定义
性能 支持静态批处理动态批处理

使用可脚本化渲染管线 (SRP) 批处理程序进行高级绘制调用批处理

BatchRenderer Group API 和Entities兼容
支持静态批处理

使用可脚本化渲染管线 (SRP) 批处理程序进行高级绘制调用批处理

BatchRenderer Group API 和Entities兼容
支持静态批处理动态批处理

请参阅渲染管线功能比较,了解有关哪个管线与哪些功能兼容的详细信息,以帮助您为项目选择合适的管线。

其他资源

选择渲染管线
渲染管线功能比较参考