UnityShader : PBR ——基于物理的渲染

Unity官方提供的两种基于物理的工作流程:金属工作流(metallic workflow)和高光反射工作流(specular workflow)。其中,金属工作流是默认的工作流程,对应的Shader为Standard Shader,而如果想要使用高光反射工作流,就需要在材质的Shader下拉框中选择Standard(Speacular setup)。

下面介绍两种工作流程的shader:

首先是金属工作流

RenderingMode:控制的是物体的渲染模式,简单理解就是设定物体是透明的渲染模式还是不透明的渲染模式

Albedo:其实就是材质的基础固有色,你可以给它一张纹理贴图也可以选择单色,当你选择纹理贴图的时候这个调色板则为纹理之上的叠加色

Metallic & Smoothness:这里则是用来控制材质的金属度和光滑度,金属度只是决定了物体最终渲染的结果是以高光为主,还是漫反射为主。而光滑度则是决定了物体的高光部分是否清晰。通常来说不使用贴图的话材质只能具有单一的金属度,这并不理想,毕竟同一个物体表面 可能会具有不同的表面特性,那这里如果你选择了金属度贴图,这里的滑动条会直接隐藏掉,通过贴图所存储的 金属度信息来进行采样计算。光滑度的概念其实和我们之前所提的的粗糙度大同小异,反过来了而已。

Source:可以理解为就是选择光滑贴图,它的数据可以来源于金属贴图,也可以是色彩贴图,这就根据美术来定啦~

NormalMap:法线贴图,它属于凹凸贴图的一种,通常用来给模型增加一些微小的凸起、凹槽和划痕等细节,在逐像素计算光照时,每个像素都会根据该点的法向量来计算最终该点的光照结果,可以通过法线贴图,改变这个点法线方向,影响它的光照结果,进而影响模型表面凹凸感。

HeightMap:视差贴图,又可以称之为高度贴图,是法线贴图的改进版,属于一个经常被忽略的高级功能。大家都知道法线,可以将一个平面做成凹凸不平的效果,但是当视角方向水平于该平面的时候,理论上凸起的部分会遮挡住后面的部分,而法线贴图却没有这个效果,但是高度贴图,就可以。那原理呢,就是根据该点的高度以及该点指向摄像机的向量,计算出一个UV偏移,来影响之后的采样。

Occlusion:环境光遮蔽贴图,通常又会叫AO贴图,在PBR中计算光照的时候,一般直接通过采样IBL来得到环境光,这个环境光是该点上一个半球上的积分。但是因为自身的之间会有凹凸,在凹陷的地方,环境光会被周围给遮挡,所以看起来并不是那么亮,通过AO贴图我们可以让调整环境光的大小,从而达到更真实的效果。

Emission:材质的自发光属性,通常用于控制从表面发出的光的颜色和强度,用的比较多的地方像如霓虹灯、LED屏幕等等。

Tiling & Offset:控制的则是以上所有贴图的Tiling Offset

其次是高光反射工作流:

基本与 金属工作流的设置一样,只是metallic变成了specular

Specular:镜面反射 (Specular) 效果本质上是场景中光源的直接反射,通常会在对象表面上显示为明亮的高光和反光(尽管镜面高光也可能是微妙或漫射的)。Specular setup 和 Metallic setup 都会产生镜面高光,因此选择使用哪个选项更多取决于设置和您的艺术偏好。在 Specular setup 中,可直接控制镜面高光的亮度和色调,而在 Metallic setup 中,可控制其他参数,镜面高光的强度和颜色会作为其他参数设置的自然结果而出现。在 Specular 模式下工作时,__Specular__ 参数中的 RGB 颜色将控制镜面反射率的强度和色调。这包括来自光源的光泽和来自环境的反射。Smoothness参数控制着镜面反射效果的清晰度。在平滑度值较低的情况下,即使强烈的镜面反射也会出现模糊和漫射。在平滑度值较高的情况下,镜面反射更明显、更清晰。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

saitoDeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值