欢迎光临散文网 会员登陆 & 注册

【技术美术百人计划】Metallic与Specular流程

2023-07-12 11:45 作者:柴郡笔记  | 我要投稿

什么是次时代:

高低模烘焙过的、和使用PBR贴图的模型
PBR:基于物理渲染


PBR基础流程:



一、两种流程

金属/粗糙度流程(Metallic/Roughness)

符合直觉,调参容易,但是没办法方便调节零度菲涅尔反射值


镜面反射/光泽度流程(Specular/Glossiness)

可以方便调节零度菲涅尔反射值,但是错误的贴图会打破能量守恒


两种流程的通用贴图:

法线贴图(normalMap)

AO贴图(ambientOcclusionMap)

高度贴图(heightMap)


二、金属/粗糙度流程(Metallic/Roughness)

1、baseColor(RGB贴图、sRGB)

储存数据:非导体(电介质)的漫反射颜色/反照率颜色(DiffuseReflectedColor/Albedo)和金属导体的镜面反射的F0值

    非导体使用0.04的F0反射值

    混合材质(非导体和金属导体混合材质)则可以认为同时储存了两种数据

非导体(即电解质、非金属):暗色值,尽量不要低于30-50 sRGB,严格控制下不低于50 sRGB。亮色值贴图不应高于240 sRGB。

导体(金属)的反射值:金属一般会有70-100%的镜面反射,映射到sRGB大概为180-255。

在SubstanceDesigner软件中,可以通过PBR BaseColor / Metallic Validate节点来验证是否在合适范围内。


    BaseColor要点:

  1. 贴图的颜色对于非金属来说是它的漫反射颜色,对于金属材质来说是它的镜面反射的F0值(ReflectanceValue,所带色相与其反射波长有关)

  2. BaseColor除了微观遮蔽信息以外,不应含有任何光照信息。

  3. 暗色值在宽松条件下不应低于30 sRGB,严格条件下不应低于50 sRGB

  4. 亮色值不应高于240 sRGB

  5. 原始金属反射值都非常大,大概能达到70-100%镜面反射,映射到sRGB范围大概是180-255

2、Metallic贴图

储存数据:对应区域的金属度,作用类似于图层遮罩。告诉着色器如何去解读BaseColor贴图中的RGB数据。0.0纯黑代表非金属,1.0纯白代表纯金属。


    Metallic要点:

  1. 金属被氧化、腐蚀、上漆、覆尘后,这些区域要被当做非导体(电介质)材质来看待

  2. Metallic中,0.0纯黑代表非金属,1.0纯白代表纯金属,我们可以用过渡的灰阶来表示不同程度的氧化和污垢。

  3. 如果Metallic贴图有值低于235 sRGB,那么在BaseColor中对应区域的反射值也该降低


3、Roughness粗糙度贴图

在粗糙度贴图中,0.0代表了平滑表面,1.0代表了粗糙表面



三、镜面反射/光泽度流程(Specular/Glossiness)

1、Diffuse RGB贴图-sRGB

储存数据:漫反射颜色(Albedo)


要点

  1. Diffuse贴图中的颜色表示漫反射颜色、原始金属由于没有漫反射,颜色应该为纯黑0.0

  2. Diffuse贴图除了微观遮蔽信息以外,不应含有任何光照信息。

  3. 暗色值在宽松条件下不应低于30 sRGB,严格条件下不应低于50 sRGB

  4. 亮色值不应高于240 sRGB


2、Specular贴图

储存数值:F0

F0都是基于真实世界测量的,没有需要,尽量不要使用反常规值,严谨一些的话,你甚至可以查表。不要忘记线性空间与sRGB的转换。

要点:

镜面反射贴图包含F0值

普通非导体的反射范围在2-5%,在sRGB中,这个值大概在40-75之间

普通宝石的反射值范围在0.05-0.17(线性空间)

普通液体的反射值范围在0.02-0.4(线性空间)

原始金属反射值可高达70-100%的镜面反射,sRGB约为180-255

如果你无法找到某个材质的折射率,可以先假设F0为4%,也就是塑料的F0


3、Glossiness贴图

光泽度贴图适用于描述表面不平整的贴图,表面不平整会造成光的散射。

纯黑代表粗糙表面,纯白代表平滑表面,和M/R流程里的粗糙度是相反的,但是在设计侧有着类似的制图原则。



四、两种流程的问题

共同问题:当贴图、纹素过小时,金属导体与非金属导体边缘会产生白边/黑边,所以要有一张良好大小和布局的uv


Metallic/Roughness流程

优点:

  • 在M/R流程中,F0值都是确定好的,设计师在对非导体的F0赋值时不易出错。

  • 纹理缓存压力更小,因为金属度贴图和粗糙度贴图都是灰度图

  • 目前兼容性最广的流程

缺点:

  • 非导体的F0值固定为4%,无法调整。然而大多数实现流程中都有控制器直接覆写这个流程,不能算是硬伤

  • 白边较为明显,尤其是低分辨率下


Specular/Glossiness流程

优点:

  • 边缘效应不会过于明显

  • 可以在镜面反射贴图中对非导体(电介质)材质的F0值自由调整。

缺点:

  • 由于在S/G工作流的镜面反射贴图中,非导体的F0值可自由调整,导致设计师容易输入错误的值,在着色器中打破能量守恒定律,造成不正确的渲染

  • 新增了一张RGB通道的镜面反射贴图,性能消耗更大

  • S/G工作流有些与传统工作流太相似,而实质对数据的要求可能是不一样的,导致设计师误解或误操作。这种情况下要求设计师有更好的PBR理论知识。


五、流程转换


【技术美术百人计划】Metallic与Specular流程的评论 (共 条)

分享到微博请遵守国家法律