PBR的工作流

主流的工作流
Metallic WorkFlow

  1. 首先需要BaseMap(albedo)和Metallic Mask 两张贴图
  2. DiffuseColor 可以通过albedo * (1 – metallic)得到,金属的Diffuse = 0
  3. SpecularColor F0 可以通过lerp(0.04,albedo,metallic)得到,非金属反射率很低,统一近似0.04,也就钻石比较高,需要额外修改。
  4. 反射率 1.0-(1-metallic)*(1.0-0.04)用于计算IBL的反射,结合Roughness用来计算F90时候的反射率
  5. ue 内置pbr对Specular进行了改良,增加了Specular节点,lerp(0.08 * Specular, BaseColor,Metallic);默认值 0.5,其实0.5*0.08 也是 0.04 。 这样可以修改specular来实现模拟钻石。

能成为主流的主要原因是能省一张图片吧。

Specular WorkFlow

  1. DiffuseColor 可以直接从Albedo贴图中获得
  2. SpecularColor F0 从SpecularColorMap中获取
  3. 没有金属和非金属的概念
  4. 能量守恒 DiffuseColor+SpecularColor 小于等于1
  5. 在unity中,光滑度一般可以放到DiffuseMap的透明通道或者SpecularMap的透明通道
  6. 法向贴图
  7. ao贴图

paragon WorkFlow
需要三张贴图:
ID Mask 用于表示区域 污渍Mask 划痕Mask

  1. DIffuseColor 由三种贴图混合得到标记区域,从shader中直接计算对应的数值。
  2. SpecularColor F0 由三种贴图混合得到标记区域,从shader中直接计算对应的数值。
  3. 使用这种,颜色直接指定特定的颜色,可以实现多种颜色变化。

来源:暮志未晚Webgl

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年5月21日
下一篇 2022年5月21日

相关推荐