unity3d换渲染管线 unity 默认渲染管线_渲染管线

SRP:(Scriptable Render Pipeline,可编程渲染管线/脚本化渲染管线),可以在Unity通过C#脚本调用API配置或执行渲染命令的方式来实现渲染流程,SRP将这些命令传递给Unity底层图形体系结构(low-level graphics architecture),然后再将指令发送给图形API(Graphics API),最终由GPU进行处理,SRP 技术可以强化通用渲染管线 (URP) 和高清渲染管线 (HDRP)。

URP和HDRP建立在SRP之上。您还可以在 SRP 之上创建自己的自定义渲染管线。

URP:Universal Render Pipeline(通用渲染管线)。Unity官方基于SRP提供的模板制作的预构建的可编程渲染管线。它的前身是LWRP(Lightweight Render Pipeline 轻量级渲染管线),在2019.3版本开始改名为URP,它适用于不同的平台,是针对跨平台开发而构建的,性能比内置管线要好。(注:内置渲染管线是unity的默认渲染管线)另外可以进行自定义,实现不同风格的渲染,通用渲染管线未来将成为在Unity中进行渲染的基础 。

特点:可以在Unity支持的各种平台上使用

具体有关URP的详细介绍请参考以下链接中URP官方文档介绍。

Universal Render Pipeline overview | Universal RP | 12.1.10 (unity3d.com)

unity3d换渲染管线 unity 默认渲染管线_游戏引擎_02

https://docs.unity3d.com/Packages/com.unity.render-pipelines.universal@12.1/manual/index.html

HDRP:它的全称为High Definition Render Pipeline(高清渲染管线),它也是Unity官方基于SRP提供的模板,它更多是针对高端设备,如游戏主机和高端台式机,它更关注于真实感图形和渲染。HDRP 利用基于物理的光照技术、线性光照、HDR 光照和可配置的混合平铺/群集延迟/前向照明架构。它为您提供了创建应用程序(如游戏、技术演示和动画)所需的工具,以达到高图形标准。

该管线仅于以下平台兼容:

  • Windows和Windows Store,带有DirectX 11或DirectX 12和Shader Model 5.0
  • 现代游戏机(Sony PS4和Microsoft Xbox One)
  • 使用金属图形的MacOS(最低版本10.13)
  • 具有Vulkan的Linux和Windows平台

【注】使用 HDRP 制作的项目与通用渲染管线 (URP) 不兼容。因此,在开始开发之前,您必须决定项目使用哪个渲染管线。同时,HDRP 功能在 HDRP 和 URP 之间不交叉兼容。

HDRP官方介绍文档如下

高清渲染管线概述 |高清 RP |12.1.10 (unity3d.com)

unity3d换渲染管线 unity 默认渲染管线_游戏引擎_02

https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@12.1/manual/index.html

接下来主要介绍URP,通用渲染管线

(1)如何创建一个含有URP的项目:

方法1:

在Unity Hub中创建新的项目时,可选择包含URP模板的2D或3D项目

方法2:

在未包含URP模板的项目中添加URP,在包管理器(package manager)中找到Universal Render Pipeline数据包,点击安装,这样就能创建URP配置文件了。

接着在项目(project)栏中选择:创建-渲染-URP 配置文件(带通用渲染器),创建完之后转到项目设置(project setting)中,在图形(grapics)中,将渲染管道设为创建好的渲染管线,在质量(Quality)处,将渲染管线资源也设为创建好的渲染管线。这样就在项目中添加了URP。

注:在导入素材后,可能也需要将素材升级为URP,在窗口-渲染-渲染管线转换器处,选择Built-in to URP位置,可将素材升级为URP素材。

(2)URP介绍

1,渲染

URP包含以下两种渲染器:

  • 通用渲染器
  • 2D渲染器

通用渲染器介绍:

查找通用渲染器资源:找到URP Asset,在渲染器列表可以看到通用渲染器,点击可以跳转到对应的通用渲染器下。

unity3d换渲染管线 unity 默认渲染管线_渲染管线_04

 通用渲染器属性介绍:

unity3d换渲染管线 unity 默认渲染管线_游戏引擎_05

 其中部分属性介绍:

过滤:

 

描述

不透明遮罩

选择此渲染器的不透明图层

透明遮罩

选择此渲染器的透明图层

渲染:

渲染路径可设为正向渲染或延迟渲染

深度引动模式:设置unity何时执行深度启动。深度启动可以可以通过减少像素着色器执行次数来改进 GPU 帧计时。

渲染通道(RenderPass):设置是否使用原生渲染通道。注意:启用此属性对 OpenGL ES 没有影响。

阴影:设置是否在透明对象上绘制阴影

2D渲染器介绍:2D渲染器在Unity 2021.2.0b1或更高版本开始使用2D渲染器,在创建2D项目时,可选择使用URP的2D项目(类似方法参考3D项目中添加URP),这样就可以在项目中使用类似3D项目中的URP资源了。

2,后处理效果实现:

在新项目中配置后处理效果的步骤如下:

首先选择主摄像机,在渲染位置将后处理(Post Processing)打开

unity3d换渲染管线 unity 默认渲染管线_学习_06

之后选择GameObject > Volume > Global Volume.,创建一个全局的volume对象,并在其中新建一个配置文件(Profile)

unity3d换渲染管线 unity 默认渲染管线_unity_07

 添加完配置文件后,点击添加覆盖就可在其中添加一些后处理的效果,例如下图中的泛光,色差等效果。

unity3d换渲染管线 unity 默认渲染管线_渲染管线_08