【Unity基础】关于Universal RP中自带渲染脚本

Universal RP自带的Shader脚本

各脚本的作用

Unity的Universal RP中给了不同的Shader脚本,分别是Lit,Simple Lit,Baked Lit,UnLit。从做左到右边性能损耗越低。Lit的性能损耗最好,使用了PBR的原则来实现光照,而Simple Lit会简单一些,不考虑PBR来实现的一种简单的光照,而Baked Lit会更简单,仅仅使用贴图去完成光照信息的输入,UnLit就没有任何的光照计算

Lit脚本

这是一个最复杂的脚本,需要对其进行一步步拆解。其实Lit是考虑PBR来实现光照的。

PBR

这里主要是拆解一下PBR的。
PBR,全称Physically Base Render,基于物理的渲染。工作流程主要是分为两种流程,主要是分成金属工作流和高光反射工作流,从截图可以看到。
在这里插入图片描述

PBR材质的两个工作流

PBR材质主要是分成两种材质工作流,主要是为了更好的去支持PBR。

金属工作流程(M/R workflow)

在这里插入图片描述
金属具有导电性和传热性,也会产生光的折射和光的反射,折射部分被金属材质完全吸收,反射部分则就是金属所呈现的颜色。
按照上面的截图可以看出来,金属工作流需要的参数为三张贴图,base color、metallic、roughness。
base color贴图:一张rgb贴图,通道数为3,表示非金属部分的反射率即基础颜色,不包含光照信息,代表金属的F0(什么是F0往后解释)。
metallic 贴图:一张灰度贴图,通道数为1,贴图上的值1代表100%纯金属,0代表100%非金属,用于金属和非金属的混合。
roughness 贴图:一张灰度贴图,通道数为1,贴图上的数值越大代表的粗糙度越高。

金属工作流(M/R workflow)的优势:
非金属固定的F0为0.04,不需要调整。
主流的工作流,通用性高。

镜面工作流(S/G workflow)

在这里插入图片描述
镜面工作流(S/G workflow),主要拆分成三张贴图。Diffuse,Specular,Glossiness。
Diffuse贴图:一张RGB贴图,通道数为3,相当于是Albedo,反射率本征图,如果金属就是纯黑。
Specular贴图:一张RGB贴图,通道数为3,定义金属和非金属的F0
Glossiness贴图:一张灰度贴图,通道数为1,数值越大,物体表面就越光滑

镜面工作流的优劣:
F0需要定义,容易产生一些违反能量守恒的材质
非主流工作流,通用性弱,某些软件工作可能需要自行下载才会支持镜面工作流
相比金属工作流,多了一张RGB贴图,采样开销加大

两种工作流公用的贴图

在这里插入图片描述
两种工作流都会使用的贴图主要有,Ambient Occlusion,Normal,Height
Ambient Occlusion 贴图:灰度贴图,表现环境光对物体表面的影响
Normal 贴图:法线贴图,提供物体表面的法线映射,模拟物体表面细节
Height 贴图:置换贴图,提供物体表面的高度差置换映射,模拟物体表面细节

Snell定律

Snell定律就是一条光线有介质1入射进入介质2时,产生的折射角度之间的关系。
在这里插入图片描述
按照上图的符号都有:
λ:入射光
λ1:反射光
λ2:折射光
n:入射平面法线

假设入射平面的上方是介质1,下方为介质2,则有介质1的音速常量为c1和介质2的音速常量c2。假设λ和n的夹角为θ,假设λ1和n的夹角为θ1,θ1=θ,λ2和n的夹角为θ2。
则有一下关系:
Sinθ/c1 = Sinθ2/c2。
因为我们是应用学科,对于Snell定律的推导过程网上有很多资料。

菲涅尔定律
双向反射分布函数BRDF
PBR的光照模型
PBR总结

整理一下PBR的几个关键要点。
1,需要遵守能量守恒定律,每次产生反射的时候都要能量的耗损,反射光比入射光永远要暗。
2,遵守涅菲尔定律,光滑的物体在边缘处会产生完全镜像,非金属的F0值范围是2% - 5%,金属的F0值为的取值为70% - 100 %
3,光照必须是在线性空间下进行计算的
4,Specular强度通过BRFD,roughness或者glossiness和F0反射控制

学习用的网站

Unity的Universal RP 手册

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值