Unity之PBR兩種工作流簡介

關於PBR工作流,看下unity內置shader的設定:

 

 可以看到有2種工作流,Specular和Metallic。它們的區別如下:

 

 也就是前者用了一張Specular Map,後者用的是Metallic Map。那麼它們的不同點總結如下:

Specular WorkFlow

1. Diffuse Color 直接從 Base Map 中獲得

2. Specular Color 從 Specular Map 貼圖中獲得

3. 沒有金屬和非金屬的概念

 

Metallic WorkFlow(主流)

1. Diffuse Color 和 Specular Color 由 Base Map、Metallic Mask兩張貼圖解碼得到。如何解碼:

float metallic = MetallicMap.r;

float3 diffuseColor = baseMap.rgb * (1 - metallic );

float3 specularColor = lerp(0.04, baseMap.rgb, metallic);

2. 改良,加入Specular接口:

float3 specularColor = lerp(0.08 * Specular, baseMap.rgb, metallic);

3. 由上我們可以得知,金屬與非金屬的區別如下:

非金屬:有漫反射顏色,從BaseMap中獲取,高光反射率很低,高光顏色爲純色,近似值爲0.04

金屬:無漫反射顏色,高光顏色爲彩色,高光顏色從BaseMap中獲取

 

轉載請註明出處:https://www.cnblogs.com/jietian331/p/17263741.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章