unity urp drawrende用法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unity urp drawrende用法相关的知识,希望对你有一定的参考价值。

参考技术A Unity URP draw mesh的用法为屏幕,物体简易描边,在unity中也可以创建自定义效果

Unity教程:URP渲染管线实战教程系列

URP渲染管线实战解密(一)

现在越来越多的手游开发都采用URP渲染管线,来代替之前Unity引擎默认的向前渲染管线,本节通过一下几个方面来阐述URP 渲染管线,对URP渲染管线有个全面认识。

(1)为什么使用URP渲染管线;

(2)如何创建一个URP渲染管线的项目;

(3)基于URP渲染管线的全局配置

这里有个游戏开发交流小组 大家可一起来学习哦

1为什么使用URP渲染管线

游戏是从PC端游发展起来的,我们拿传统的向前渲染管线中的光源来距离,向前渲染管线支持任意多的重要光源,每个重要光源, Unity 都要基于这个光照来绘制一次物体, 这样导致pass次数非常的多,性能消耗开销非常大,于是就有静态光照,静态烘培等。随着手机游戏的发展,人们不满足于假的静态光照,需要实时光照,又要保证很好的性能。这个时候,就需要开发者做一个权衡和选择,在特定的满足手游开发需求前提下,最大限度的提升性能,于是URP渲染管线就出来了,他假定了一些特定条件如主光源只能是平行光,其它的附加光源在配置文件中限定数目,在一个pass内处理完所有的光源与光照计算。加上这些限制条件后,URP渲染管线能开发出满足手机游戏的实时光照的很好效果,同时又能最大限度的获得最好的性能。URP渲染管线是对使用环境做一些限定,基于这些限定来定制渲染策略, 获得很好效果的同时还有很好的性能。所以慢慢的很多公司都采用URP渲染管线来做手机游戏。

URP渲染管线,是基于Unity游戏引擎的可编程渲染管线机制,接合URP渲染管线的前提,实现的渲染策略。从渲染来说他有重新定制了摄像机,光照计算,阴影计算,后期处理,特有的一套Shader等(基于URP的PBR shader,以前的向前渲染管线的PBR Shader不能用了)。Unity在新版本中把URP渲染管线做成一个工程项目模板,我们使用这个模板来创建URP渲染管线项目非常容易,后续我们也会讲如何把老项目升级成URP渲染管线项目。

2 如何创建一个URP渲染管线的项目

接下来我们使用Unity 2020.2.3f1 来创建一个URP渲染管线的项目,基于这个项目来学习URP。打开Unity Hub,选择新建项目会出现URP项目模板,如图 1.1-1所示:

图1.1-1

创建完成以后,我们就能看到一个标准的基于URP渲染的项目与开发环境(Packages下都有URP的渲染管线代码与Shader,项目目录下有一些URP相关的一些设置等。),基于这个环境来开发自己的项目与代码就可以了,其实和普通的没有什么差别。如图1.1-2:

图1.1-2

接下来从文件夹入手来分析一下URP的示例场景与项目的组织方式。实例场景给出了URP的几个重要部分,如图1.1-3:

图1.1-3

URP摄像机: Main Camera, 下面再写关于base摄像机与Overlay摄像机。

主光源与附加光源:主光源是平行光,可以多个平行光叠加,附加光源再场景中部署如图1.1-4:

图1.1-4

画面的后期处理: 画面后期处理的控制,主要是渲染完成后针对,加一些后期的渲染效果,分为全局与局部模式,后面的教程再讲解。如图1.1-5所示:

图1.1-5

接下来看下URP项目文件夹,URP项目组织其实和普通的差不多,Packages下安装好了URP相关的依赖,在Assets下和普通的稍有不同,主要在于URP的配置文件,一起来看下。

图1.1-6

图1.1-7

1.1-7中ExampleAssets与Materials文件夹我们导自己项目里面直接可以删除,到时候用项目的资源目录相关代替就可以了。Presets文件夹里面存放了一些全局的设定,一般带到项目就可以了。Scenes / Scripts文件夹存放场景与代码,和普通项目一样,可以随意的删除与修改。Settings文件夹存放了渲染管线的配置文件相关如图1.1-8,不要删除。

图1.1-8

TutorialInfo文件夹项目中可以删除,没有任何实际的作用。

图1.1-9

URP渲染管线Shader相关都存放在这里,做项目开发的时候要使用基于URP的Shader,自己开发Shader也要符合URP的规范。

3基于URP渲染管线的全局配置

URP渲染管线的决定渲染关键性的全局配置参数在PipeLine的配置里面。如何打开全局配置,打开Project Settings窗口啊, 选择Graphics,如图1.1-10

图1.1-10

这里有光照,雾以及预加载的Shader以外,就是有一个Scriptable Render Pipeline Settings, 这里就是渲染管线的一些配置,而这个文件关联的就是项目中Settings文件夹中的设置,如图1.1-11所示:

图1.1-11

URP渲染管线的设置分成了3个等级,每个等级一个配置文件,分为:

高渲染质量等级:UniversalRP-HighQuality

中渲染质量等级: UniversalRP-MediumQuality

低渲染质量等级:UniversalRP-LowQuality

渲染设置的主要参数如下,如图1.1-12所示

图1.1-12

你可以根据手机的性能来切换渲染等级,从而在不同的性能手机上来在性能与效果之间获得很好的平衡。

今天的分享就到这里,关注我们,下一节我们将会继续讲解解URP渲染管线实战教程。

以上是关于unity urp drawrende用法的主要内容,如果未能解决你的问题,请参考以下文章

AmplifyShaderEditor的一些高端用法

Unity教程:URP渲染管线实战教程系列

unity渲染管线及升级URP

Unity URP 简单的Renderer Feature

Unity URP

Unity URP入门实战