URP是unity出的比较简单的可供改造引擎渲染管线的流程。能实现用较低的代价消耗实现较好的效果。
现记录学习:
一.如何设置URP关键
这步结束后材质会被替换
-
加package
-
Create/Rendering/URP Universal Rendering
-
Setting设置为urp
材质也需要urp目录下的
几种常用的shader:
Lit是基于物理的shader
SimpleLit低端机性能较好,使用Blinn-Phong光照模型计算
Baked Lit不需要实时光照和高端反射效果可选用
Unlit单色shader
二.Shader写法的改变
兼容处理
Lit Shader里写了5个模块
ForwardLit:前向渲染
ShadowCaster:阴影渲染
DepthOnly:写入深度
Meta:
Universal2D:2D渲染
Shader中不能写CGPROGRAM ... ENDCG包裹而是HLSLPROGRAM
...ENDHLSL
Unity为什么URP要这么搞的原因是因为之前CG代码会包含其他文件,导致文件变得复杂。HLSL所有的引用都是显示加入非隐式调用,显得精简。