PBR最佳實踐(Best Practices For Physically Based Content Creation)
該視訊是Anton Hand在Unite 大會上做的分享,比較老的視訊了,但是PBR理論及最佳實踐永遠不會過時。Anton Hand在Youtube上還有一個頻道 (需科學上網),每隔一段時間會上傳一個開發日誌,演示他做的VR專案進展,有興趣的可以看一下,是關於他的VR槍戰遊戲,目前已上架Steam。本文為個人導讀兼筆記。
Best Practices For Physically Based Content Creation
03:36 首先,PBR是一個行業標準,但是不要拿著錘子看到的都是釘子,PBR工作流程是使用Unity製作內容的一個選項,但是並不是所有專案都需要引入PBR流程,PBR可以用在寫實級別場景中(對於VR場景,如果是結合傳統行業,竊以為引入PBR會有比較大的優勢,因為虛擬現實,一分為二,虛擬+現實,現實即真實,真實即寫實)。
04:28 PBR的優勢一:Anton Hand說到,他使用PBR技術,是為了一個標準的流程。演示了Roughness和Metallic的變化,對於物體材質的動態變化,比較直觀的展示了這兩個屬性作用的影響。提到了能量守恆定律,個人認為在操作層面,不用考慮太多。
07:00 PBR的優勢二:展示了四個不同光照環境下的四張圖,類似Marmoset展示的經典鏡頭在四中光照環境中的表現。如下圖。
你不用為了某個光照環境去進行材質的調整,只要設定了相關的物理屬性,它就會根據不同的光照環境做出相應正確的變化。
12:21 學習資料。如下圖,看過Marmoset官網Blog,值得推薦。
09:03 PBR的必要條件:必須進行HDR和Linear Space的設定。攝像機設定為HDR,Color Space改為Linear。非必要條件:多數是Post-Processing,如Bloom、Toon Mapping、Grading以及光照。
13:46 儘可能為一個材質提供更多的資料,這包括顏色(貼圖)、法線(貼圖)、光澤度(貼圖)、高度(貼圖)等,總之,類似描述一個事物,給的細節越多,描述越準確,即真實。
16:29 目前有兩種常用的構建PBR材質的工作流程,一種是Spec-Gloss流程,如下圖。
一種是Metal-Rough流程,來自迪士尼離線渲染解決方案,也是我常用的一套流程,PBR裡講究通道的概念,(類似PS中的通道,各位可以看一下PS中的通道概念)。
18:33 Spec-Gloss流程的優缺點:
21:02 Metal-Rough流程的優缺點:
26:07 各種貼圖的介紹——其實現在你需要使用通道的思維來看這些貼圖了。首先是顏色貼圖,unity中成為Albedo,某些軟體如Substance中稱之為Basecolor,指的是同一種貼圖。需要注意的是,顏色貼圖中不要有光照和高光資訊。
26:42 遮蔽貼圖(Occlusion Map)介紹
28:36 Specular貼圖介紹(僅用於Spec-Gloss流程)
29:35 Glossiness和Roughness貼圖,這兩個貼圖描述了同一種屬性,即微表面,不是兩個的資料是互為相反,即“光滑”和“粗糙”的區別——一個物體的表面,你可以說是粗糙的,也可以說是不光滑的。如下圖右側,兩張貼圖互為反相。
31:33 法線貼圖介紹。市面上已經有比較多的軟體來製作法線貼圖了,3ds max、maya、blender自不必說,專業的如xNromal,Substance Designer、Substance Painter亦可烘焙法線貼圖。每家演算法不一樣,所以一定要注意設定,以確保匯入unity中不出現瑕疵。比較常見的問題是接縫。同時作者給出瞭解決方案。
35:24 沒有自反射的物體,需要藉助預計算的反射,unity中使用Reflection Probe,IBL等。
36:19 關於SSR(Screen-Space Reflection),基於螢幕的反射。畫質優美但是耗能,尤其是在VR中,因為要渲染兩次,不建議使用。
37:40 螢幕特效,關於Bloom,慎用,作者演示使用Bloom特效以後緩慢移動的效果,模型上某些點會有閃光,這並不是我們希望看到的。如果非要使用Bloom的話,作者推薦使用Sonic Ether's Bloom外掛。
38:21 Color Grading
38:56 SSAO/SSAOc/SSBO——螢幕遮蔽
39:45 總結。