[Unity]URP排坑 持续更新

发布于 2020-02-02  117 次阅读


前言

先吐槽一下Untiy最近的更新,从2018到2019,经历了LWRP HDRP到URP(通用渲染管道)的修改。
渲染管线的优化升级本来是好事,能够带来新的视觉效果同时提升性能。
但是不得不说现在所谓预览的东西实在是太多了,而且版本升级后特性就变了,难免留下很多坑。
同时官网的文档也不太好找,需要跳转到URP的文档去。经常加载不出来也是令人头疼,挂梯可破。
写这篇文章的目的就是来依次排除一些从旧版本升级过来的问题,以及重新认识一下Unity。

Camera

新版本的Camera,可以看到挂载的Camera组件大变样了。
- Render Mode :渲染模式,默认为Base
- Projection :投影配置,包括之前的投射方式(正交,透视)以及视角FOV等
- Rendering:渲染配置,包括配置渲染器、后期效果、抗锯齿、遮罩剔除、阴影等
- Environment:环境配置,设置重绘的背景(天空盒、纯色)以及Volume,这个Volume后面详细介绍一下
- Output:输出配置,设置画面输出到相机还是纹理上、视点、以及HDR和MSAA的配置

image.png

Post Processing

之前LRWP用的是PostProcessing V2的包,在PackageManager里面进行下载管理的。
Unity更新到2019.3,发现之前的后期效果不起作用了,实际上是URP没有用之前的PostProcessing来处理渲染效果。
新建一个URP的工程,Unity会自动创建一个示例场景,我们可以看到场景中有一个Post-process Volume空物体。
20200202135450.png
可以看到挂载的Volume组件就是用来处理后期特效的,该组件位于Miscellaneous(杂项)中,这个分类也是醉了。
看了下介绍,所谓的Volume是HDRP中添加进来的创建体积特效的。
官网上说URP和LWRP、HDRP不兼容,但是可以直接使Volume它来控制屏幕后期效果。
注意:使用后期效果需要在Camera中,将Rendering选项下的Post Processing打开。
u1s1,这种设计还是比较坑的,启用一个效果,还要到处去配置开关,不太友好。
camera_postprocessing.png

Shader

URP内置的着色器在Universal Render Pipeline中。
由之前Standard着色器自动修改过来的默认着色器是Simple Lit,基本上配置和Standard无异。
如果需要调整金属度和光滑度,可以使用Lit着色器。
带有透明通道的,比如树叶一类的材质可以使用Nature下的SpeedTree8着色器。

Comments


来自像素世界的代码家,创造第九艺术!