基于物理的渲染學習心得——面向使用的PBR理論

本文是筆者在學習PBR理論中的一些心得,并試圖以結合Substance系列軟件為例,從使用(實用)層面介紹PBR理論。

PBR的定義:

PBR全稱是基于物理的渲染(Physically Based Rendering ),它是一套先進的渲染方案,能使物體對于光線做出精確的反應。從使用層面上來看,PBR是為了材質更加接近真實,至于表現PBR的過程及相關的Shader,我們不需要去了解,你可以把它認為是一個引擎,或者是一個黑盒,我們需要做的只是提供數據(即貼圖)。

PBR與實時渲染

可以說PBR是為實時渲染服務的。傳統貼圖流程基于烘焙,在建模軟件中設定燈光及環境,烘焙出彼時環境對物體的影響,特殊情況還會烘焙上一些陰影。那么在游戲引擎中,環境光照一旦變化,物體一旦移動,必然會穿幫。而PBR則只關心物體的物理屬性,一旦給定了數據,則無論在任何光照條件下都能正確反映物體本來的樣子。就像上帝造物一樣,他只關心物,而不需要考慮光照,物造好了,無論是白天黑夜陰天晴天,物體都能對光線做出正確的表現。如下圖,這是一個典型的使用PBR材質的模型,當在不同的光照環境下,它都能正確對光線做出反應,重要的是,這里只需要做一種材質而不是四種。


來自Marmoset官網
從PS中的RGB通道看PBR

我們來看一下PS中的通道。


PS中的通道

如上圖,默認情況下,可以查看一張圖片的紅綠藍三個通道,選擇任意一個通道,相對應顯示該圖片的一張灰度圖,那么這里的通道就是顯示了這張圖片每個點上擁有的顏色信息值。根據顏色理論,某一點的顏色,就是紅綠藍三色的混合程度,那么這三張“貼圖”混合,就成了最終的“彩色”圖片。
這跟PBR通道有什么關系呢?你可以把PBR的通道看做是維度的擴展,如果PS的通道是太陽、地球、火星組成的太陽系,那么在PBR維度,太陽系和其它星系就組成了銀河系。在PBR的通道里,顏色只是其中一個通道,其它的還有Normal通道提供表面凹凸信息,Metallic通道提供是否金屬信息,Roughness通道提供光澤度信息,其它通道若干。由此可見:

一切貼圖都是數據

PBR用到的貼圖,用來描述不同的物理屬性,類似人的幾大系統,比如消化系統、呼吸系統、神經系統等,那么PBR的各種系統,也可以表現為通道。簡單介紹一下PBR的幾個比較重要的“通道”:

  • 顏色貼圖:描述物體某個位置的顏色;
  • 法線貼圖:描述物體某個位置的凹凸;
  • Roughness貼圖:描述物體某個位置的粗糙程度,注意,表現細節的劃痕、污漬、指紋等,就是不同外形的粗糙程度的不同;
  • Metallic貼圖:描述物體某個位置是否為金屬;

那么這些貼圖如何反映到3D模型上呢?這就需要UV的幫助:

UV是PBR貼圖從2D映射到3D的橋梁

UV的展開方法,已經存在著很多解說了,比較形象的解釋是類似于講一個紙盒剪開,使其平整在桌面上。UV存在的意義,就是告訴渲染引擎,如何將一張2D貼圖上的數據映射到3D模型上,過程就像將一張貼圖包裹在模型上,而如何去包裹會有65536中包法,所以這時候就需要UV告訴引擎,如何將貼圖按照我們想要的方式包住模型。做PBR貼圖,模型方面繞不開展UV。那什么情況下不需要展UV呢?就是模型沒有任何物理區別需要展現的情況,打個比方,浴缸,一個新浴缸——表面光滑、顏色單一、整體光澤度一致,這時候可以不用展UV。但是,如果要在浴缸的某個地方有寫實的需求,比如年歲長一點,有了水垢,或者有掌紋、手印,這時候就必須要展UV了。

PBR與Substance系軟件

Substance系列軟件是典型的基于PBR理論的材質制作軟件。掌握這兩個軟件的核心就是通過PBR理論或者思想去使用它們。這里不再介紹兩個軟件的界面,單就軟件如何體現PBR思想來介紹一下,總體來說:

  • Substance Designer(以下簡稱SD)中通過輸出節點來對PBR的各項物理屬性進行構建。
  • Substance Painter(以下簡稱SP)中使用通道的概念對PBR的各項物理屬性進行構建;
Substance Painter中體現PBR理論的地方:
  1. 材質屬性面板:


    Substance Painter的材質屬性

    如上圖,區別于PS的筆刷,SP中不只可以畫顏色,一筆畫下去,顏色、高度、粗糙度、金屬、法線都有了,你可以選擇關掉上面的任意一個開關,即不繪制相應的物理屬性。

  2. 圖層面板:


    SP圖層面板

    如上圖,下拉列表即材質的物理屬性,可以選擇相應的通道,通過圖層右邊可以調節當前物理屬性的影響程度以及與其它圖層的混合模式,如果你會點PS,這就很容易理解了。

Substance Deisnger中體現PBR理論的地方:

Substance Designer中每當新建一個材質,就會給出如下圖的幾個輸出節點,輸出節點越多,描述的物理屬性越多:

Substance Designer

近距離查看:
image.png

所以,在SD里,構建材質的過程,就是構建這幾個輸出節點的過程。

灰度圖在各通道的意義

某些通道,如Roughness、Height、Metallic使用灰度圖提供數據,灰度使用0到255這256個層級表示其程度,不同的通道,灰度數值代表的意義不同。

  • Roughness通道:數值越大,代表此處數據量越多,即此處越粗糙,數值越低,數據量越少,即此處越光滑。
  • Height通道:數值越大,此處越高,數值越小,此處越低。
  • Metallic:只有0和255兩個數值,因為現實世界沒有既是金屬也是非金屬的物質,0代表非金屬,255代表金屬,有些地方也會用0或1表示。
為什么說Roughness是表現細節的關鍵

拋開建模不談,因為某些細節可以通過建模來實現的,比如表面裂痕、并不平直的直線、并不平坦的表面。邊緣磨損、污漬、劃痕,本質上來說都是Roughness程度的不同所表現出來的,比如沒有擦干凈的鏡子,生銹的水龍頭,有掌紋的杯子等。所以細節的打造,無論是在SP還是SD中,都要將注意力重點放在Roughness貼圖的制作上來。

PBR與VR的交集——現實(真實)

除去如低多邊形卡通藝術化的場景,決定VR場景品質的關鍵是真實,也是VR體驗的第一印象。且不說PC端良莠不齊的貼圖品質,如果只是將PC端的模型原樣搬到VR中而不對材質做PBR加工的話,給人帶來的震撼僅限于簡單臨在體驗,而不是沉浸。

如何練習

鑒于PBR的宗旨是表現真實,平日里可以注意觀察周圍的環境,用PBR思維來分析看到的事物,使用顏色、法線、Roughness幾個維度來分析,比如鋪了瓷磚的地面,公交車上的把手,路邊磨損的欄桿。在制作過程中,也可以搜索真實物體的照片進行比對,觀察是什么細節決定了這個物體的真實。

總結:

PBR流程及其相關軟件如Substance,正在逐漸成為CG行業的工業標準。如果你是團隊,建議引入PBR工作流程,因為這是一套高效省時的工作流程,它可以更好的做人員分工,減少返工的時間成本,并且給項目品質帶來提升;如果你是個人,建議早日學習PBR工作流程,因為越來越多的團隊在使用這套流程。
這就是一個跨界程序員眼里的PBR理論,希望對你有所幫助。

參考文檔:

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,732評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,214評論 3 426
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 177,781評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,588評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,315評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,699評論 1 327
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,698評論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,882評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,441評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,189評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,388評論 1 372
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,933評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,613評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,023評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,310評論 1 293
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,112評論 3 398
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,334評論 2 377

推薦閱讀更多精彩內容