基于物理渲染指引(The PBR Guide)

基于物理渲染指引(The PBR Guide)

翻譯Academy Substance官方教程文章“The PBR Guide”,原文鏈接

https://academy.substance3d.com/courses/the-pbr-guide-part-1


第一部分?基于物理渲染和著色的理論

光是一種復(fù)雜的物理現(xiàn)象坠陈,它存在波粒二象性铺敌,既有波的特點(diǎn)扔水,又有粒子的特點(diǎn)赞草。為了描述這種特性晨汹,提出了很多不同的光照渲染模型终议。

作為紋理美術(shù),我們關(guān)注的主要是光的幾何模型祥山,即光和介質(zhì)之間的交互圃验。理解光線和介質(zhì)表面是怎么交互的非常重要,因?yàn)槲覀兊墓ぷ骶褪莿?chuàng)建用來(lái)描述介質(zhì)表面的紋理缝呕。我們創(chuàng)建的紋理和材質(zhì)在虛擬世界中要與光線發(fā)生交互澳窑。所以我們對(duì)光線的行為理解越深斧散,創(chuàng)建出來(lái)的紋理效果就越好。

本文中摊聋,我們將討論基于物理渲染模型背后的物理原理鸡捐。我們從探究光線的行為開(kāi)始,最后得出基于物理渲染(PBR)的特性麻裁。


光線

根據(jù)光的幾何模型原理箍镜,光在均勻透明介質(zhì)(比如空氣)中傳播時(shí)的路徑是一條直線。同時(shí)煎源,光線在碰到不透明物體表面(反射)色迂,或者從一種介質(zhì)進(jìn)入另一種介質(zhì)(折射)(比如從空氣進(jìn)入水中)時(shí)的行為是確定的。

基于光的幾何模型手销,我們可以將光線從光源起點(diǎn)到最終轉(zhuǎn)化其他能量(比如熱能)的終點(diǎn)歇僧,中間經(jīng)過(guò)的路徑展現(xiàn)出來(lái)。

一束照射到物體表面上某一點(diǎn)的光線我們稱(chēng)之為入射光锋拖,光線入射的角度稱(chēng)為入射角(圖01)诈悍。


圖01:入射角,入射和反射光線

當(dāng)一束光照射到分割兩種不同介質(zhì)的一個(gè)平面上時(shí)兽埃,在光線和平面的相交點(diǎn)侥钳,會(huì)發(fā)生以下兩個(gè)事件中的一個(gè),或者兩個(gè)同時(shí)發(fā)生:

1柄错、光線被表面反射到另一個(gè)方向舷夺,遵循反射定律,即反射角等于入射角鄙陡。

2、光線從一個(gè)介質(zhì)進(jìn)入另一個(gè)介質(zhì)躏啰,傳播路徑依然是直線(折射光線)趁矾。

于是,光線被分成了兩個(gè)方向:反射和折射给僵。在物體表面毫捣,光線要么被反射,要么被折射帝际。光線最后會(huì)被介質(zhì)吸收轉(zhuǎn)化為熱能蔓同,但是吸收不會(huì)發(fā)生在物體表面。


吸收和散射(透明和半透明)

當(dāng)光線在非均勻介質(zhì)或半透明材質(zhì)中傳播時(shí)蹲诀,會(huì)被吸收和散射:

當(dāng)光線被吸收時(shí)斑粱,光強(qiáng)會(huì)減弱,轉(zhuǎn)化成另一種能量——通常是熱能脯爪。由于光的吸收與波長(zhǎng)有關(guān)则北,所以被吸收后光的顏色會(huì)發(fā)生改變矿微,但是光的方向不會(huì)變。

當(dāng)光線被散射時(shí)尚揣,方向會(huì)隨機(jī)改變涌矢,改變的幅度與材質(zhì)有關(guān)。散射隨機(jī)改變光線方向快骗,但光強(qiáng)不會(huì)發(fā)生改變娜庇。以耳朵來(lái)舉例,耳朵很薄方篮,對(duì)光的吸收較少名秀,可以看到從耳朵背后頭過(guò)來(lái)的散射光,圖02恭取。

圖02:耳朵背后的散射光

如果既沒(méi)有散射泰偿,吸收也比較少,光線會(huì)透過(guò)介質(zhì)蜈垮,比如玻璃耗跛。舉個(gè)例子,想象一下你在一個(gè)干凈的池子里游泳攒发,你可以在水中睜開(kāi)眼睛看較遠(yuǎn)的距離调塌。然而,如果池子里水比較臟一些惠猿,水中的臟微粒會(huì)將光線散射羔砾,降低水的清澈度,在水中看到的距離就會(huì)縮短偶妖。

光在介質(zhì)中傳播的距離越遠(yuǎn)姜凄,就越可能被吸收或散射。所以物體的厚度很大程度上決定了光線被吸收或散射的程度趾访。在shader中一般用一張厚度紋理(Thickness map)來(lái)描述物體的厚度态秧,圖03。

圖03:Substance Painter中次表面散射shader用到的厚度紋理

漫反射和鏡面反射

鏡面反射是指我們之前提到的在物體表面被反射的光線扼鞋。光線在物體表面被反射申鱼,然后沿著不同的方向傳播。遵循反射定律云头,即在完美平滑表面上反射角等于入射角捐友。然而,大多數(shù)物體的表面是不規(guī)則的溃槐,反射方向會(huì)根據(jù)表面粗糙度不同發(fā)生一些變化匣砖。這只影響光線方向,二光強(qiáng)保持不變。

粗糙表面的高光區(qū)域更大脆粥,而且比較模糊暗淡砌溺。光滑表面的鏡面反射則比較聚集,在某些角度看起來(lái)更亮变隔。然而规伐,不論是光滑表面還是粗糙表面,反射的光線總量是一樣的匣缘,圖04猖闪。

圖04:反射方向根據(jù)物體表面粗糙度不同而改變

折射改變光線的方向。當(dāng)光線從一種介質(zhì)進(jìn)入另一種介質(zhì)時(shí)肌厨,光的速度和方向都會(huì)發(fā)生改變培慌。折射率(IOR)是用來(lái)描述介質(zhì)對(duì)光線傳播方向改變程度的一種光學(xué)參數(shù)。折射率決定了光線穿過(guò)某種介質(zhì)進(jìn)入另一種是的光線方向扭曲程度柑爸。例如吵护,誰(shuí)的折射率是1.33,玻璃的折射率是1.52表鳍。在圖05中可以看到一根吸管放在一個(gè)裝有水的玻璃杯中馅而。吸管看起來(lái)彎曲了,因?yàn)楣饩€在不同介質(zhì)(空氣譬圣、水瓮恭、玻璃)中傳播發(fā)生了折射。

圖05:吸管因?yàn)檎凵涠鴱澢?/div>

漫反射是一種折射光厘熟。光線從一種介質(zhì)進(jìn)入另一種屯蹦,舉個(gè)例子,比如從空氣中進(jìn)入一個(gè)物體绳姨。在物體中光線會(huì)發(fā)生多次散射登澜,最后又在與進(jìn)入是幾乎相同的地方,從物體中折射回空氣飘庄,圖06.

圖06:光線從一種介質(zhì)進(jìn)入另一種脑蠕,在內(nèi)部散射

漫反射材質(zhì)對(duì)光線的吸收性較強(qiáng)。如果散射光在材質(zhì)中傳播很長(zhǎng)一段路徑竭宰,會(huì)被完全吸收掉空郊。從物體中出來(lái)的光線一般只傳播了很小一段距離份招,距入射點(diǎn)很近切揭。所以,入射點(diǎn)和出射點(diǎn)之間的距離可以忽略锁摔。

傳統(tǒng)著色中用于漫反射的Lambertian模型廓旬,沒(méi)有考慮物體表面的粗糙度。然而其他一些模型,比如Oren-Nayar模型孕豹,把粗糙度考慮在內(nèi)了涩盾。

有時(shí)我們把一些高散射度低吸收度的材質(zhì)當(dāng)作半透明材質(zhì)。比如煙励背、牛奶春霍、皮膚、玉叶眉、大理石址儒。皮膚、玉衅疙、大理石這三種材質(zhì)的渲染一般要使用次表面散射模型莲趣,次表面散射模型中入射點(diǎn)和出射點(diǎn)之間的距離不可忽略。精確渲染那些散射度與吸收度非常低且差異較大的材質(zhì)比如煙和霧饱溢,需要更復(fù)雜的方法喧伞,像蒙特卡洛模擬。


微表面理論(Microfacet?Theory)

理論上講绩郎,物體表面的不規(guī)則度對(duì)漫反射和鏡面反射都有影響潘鲫。然而實(shí)際中,由于材質(zhì)內(nèi)部的散射嗽上,粗糙度對(duì)漫反射的影響微乎其微次舌。結(jié)果就是,漫反射的出射方向與物體表面粗糙度和入射方向都不相關(guān)兽愤。最常用的漫反射光照模型(Lambertian)完全忽略了粗糙度彼念。

本文中,我們稱(chēng)物體表面不規(guī)則度為粗糙度浅萧。物體表面不規(guī)則度還有很多叫法逐沙,包括粗糙度、光滑度洼畅、光澤度吩案、微表面,根據(jù)使用的PBR工作流不同而叫法不同帝簇。所有這些叫法描述的都是物體表面的同一種屬性徘郭,即像素級(jí)的幾何細(xì)節(jié)。

根據(jù)使用的工作流不同而使用粗糙度紋理或光滑度紋理來(lái)表示物體表面不規(guī)則度丧肴〔腥啵基于物理的雙向反射分布函數(shù)(BRDF)是以微表面理論為基礎(chǔ)的。微表面理論假設(shè)物體表面由很多微小的朝向不同的平面細(xì)節(jié)組成芋浮,這些平面被稱(chēng)作微表面抱环。每一個(gè)小平面按照自己的法線將光線反射到一個(gè)特定的方向,圖07。

圖07:基于微表面原理的基于物理雙向反射分布函數(shù)

那些法線方向剛好處于入射光方向和視角方向中間方向(半角向量)的微表面反射出來(lái)的光線是可見(jiàn)的镇草。然而眶痰,并不是所有法線方向與半角向量方向相同的微表面反射出來(lái)的光線都可見(jiàn),其中一些可能處于光源或視角的陰影中梯啤,如圖08所示竖伯。

微觀層面的表面不規(guī)則度會(huì)使光線發(fā)散。例如因宇,分散的光線使得反射光變模糊黔夭。如圖08所示,由于反射后的光線不平行羽嫡,所以最終的鏡面反射光是模糊的本姥。

圖08:分散的光線使得反射光變模糊??

顏色

我們看到的物體表面的顏色與光源發(fā)出的光的波長(zhǎng)有關(guān)。這些波長(zhǎng)的光部分被物體吸收杭棵,另一部分通過(guò)漫反射和鏡面反射反射出來(lái)婚惫,最后反射出來(lái)的光的波長(zhǎng)就是我們看到的顏色。

例如魂爪,蘋(píng)果皮對(duì)紅色光的反射程度大先舷,只有紅色波長(zhǎng)的光從蘋(píng)果皮反射回來(lái),其他波長(zhǎng)的光被吸收了滓侍,圖09蒋川。

圖09:紅色波長(zhǎng)的光反射至眼睛

蘋(píng)果還會(huì)有與光源顏色相同的鏡面反射高光,因?yàn)橄裉O(píng)果皮這樣的絕緣體撩笆,它們的鏡面反射幾乎與波長(zhǎng)無(wú)關(guān)捺球。對(duì)于這些材質(zhì),鏡面反射不會(huì)收物體本身顏色影響夕冲。之后的章節(jié)中我們會(huì)討論另一些不同類(lèi)型的材質(zhì)(金屬和導(dǎo)體)氮兵。

Substance PBR?shaders使用GGX微表面分布。


BRDF

雙向反射分布函數(shù)(BRDF)是一個(gè)用來(lái)描述物體表面反射屬性的函數(shù)歹鱼。在計(jì)算機(jī)圖形學(xué)中泣栈,有很多不同的雙向反射分布函數(shù)模型——其中包括一些不是基于物理的∶忠觯基于物理的雙向反射分布函數(shù)南片,必須滿(mǎn)足能量守恒和互換性(Reciprocity)⊥ザ兀互換性即赫爾姆霍茲互換原則(Helmholtz Reciprocity Principle)疼进,對(duì)于同一個(gè)BRDF函數(shù),交換入射光和出射光依然成立螺捐。

Substance的PBRshader中使用的BRDF是基于迪士尼反射模型的颠悬。這個(gè)模型使用了GGX微表面分布函數(shù)。GGX函數(shù)用于鏡面反射分布效果非常好:它產(chǎn)生的高光有一個(gè)短的波峰和一個(gè)長(zhǎng)的衰減拖尾定血,看起來(lái)更真實(shí)蜻拨,圖10驼仪。

圖10:GGX和Blinn鏡面反射分布——GGX效果更好??

能量守恒

能量守恒在基于物理渲染中起著至關(guān)緊要的作用。這一原則是說(shuō)從物體表面發(fā)射出來(lái)的光線(包括反射和散射)總量小于表面接收到的光線總量。換句話(huà)說(shuō)划栓,物體表面反射的光線強(qiáng)度不可能大于入射到表面時(shí)的光線強(qiáng)度。作為美術(shù)人員屎勘,不需要關(guān)心怎么去保持能量守恒赡译。這就是基于物理渲染的一大優(yōu)點(diǎn):能量守恒總是在shader中強(qiáng)制保持的,它是基于物理模型的一部分濒析,這使得我們把精力放在藝術(shù)創(chuàng)作而不是物理規(guī)則上正什。


菲涅爾現(xiàn)象

菲涅爾反射因子,作為雙向反射分布函數(shù)的一個(gè)系數(shù)号杏,同樣在基于物理著色中有著至關(guān)重要的作用婴氮。菲涅爾現(xiàn)象是由法國(guó)物理學(xué)家?jiàn)W古斯丁.簡(jiǎn).菲涅爾發(fā)現(xiàn)的,光線在物體表面反射的程度與視角相關(guān)盾致。拿水池來(lái)舉例主经,如果從上方直接看下去,視線垂直于水面庭惜,你能看到水池底部罩驻。我們稱(chēng)這樣的視角為零度視角或法線視角,法線指的是物體表面的法線护赊。如果從掠射視角看水池惠遏,視角幾乎平行于水面,你會(huì)看到水面上的鏡面反射變得很強(qiáng)烈骏啰,你完全無(wú)法看到水面下的情況爽哎。

在基于物理著色中,菲涅爾并不需要像傳統(tǒng)著色那樣由美術(shù)人員來(lái)控制器一。它也是由PBR?shader進(jìn)行處理的物理部分课锌。當(dāng)從幾乎平行的視角看物體表面時(shí),光滑表面在掠射角下有接近100%的反射比祈秕。

對(duì)于粗糙表面渺贤,在掠射角下反射比也會(huì)顯著增加,但不會(huì)達(dá)到100%请毛。造成這種情況最重要的影響因素是每個(gè)微表面的法線與光線的夾角志鞍,而不是整個(gè)表面的法線與光線的夾角。因?yàn)楣饩€被分散到不同的方向了方仿,所以反射變得柔和模糊了固棚。在微觀層面上講统翩,就像是所有微表面的菲尼爾現(xiàn)象的平均結(jié)果。

F0(0度角菲涅爾反射程度)

當(dāng)光線以垂直于表面(0度角)射向物體表面此洲,一部分光線會(huì)被反射厂汗。使用物體的折射率(IOR),可以計(jì)算出反射光的量呜师,標(biāo)記為F0(0度角菲涅爾)(圖11)娶桦。而折射進(jìn)物體表面的光線的量為1-F0。

圖11:光滑絕緣體表面汁汗,F(xiàn)0反射2-5%的光線衷畦,掠射角時(shí)反射100%??

對(duì)于大多是絕緣體來(lái)說(shuō)F0值得范圍為0.02-0.05(線性值)。對(duì)于導(dǎo)體知牌,F(xiàn)0值為0.5-1.0祈争。物體表面的反射比是由折射率決定的,公式如下:

當(dāng)我們創(chuàng)建紋理時(shí)角寸,我們關(guān)心的時(shí)F0值铛嘱。非金屬(絕緣體)使用灰度值,而金屬(導(dǎo)體)使用RGB顏色值袭厂。在基于物理渲染中墨吓,針對(duì)美術(shù)人員來(lái)說(shuō),通用光滑絕緣體表面纹磺,F(xiàn)0反射2%到5%的光線帖烘,掠射角時(shí)反射100%,圖11橄杨。

不同絕緣體(非金屬)的反射比差異并不明顯秘症,結(jié)合粗糙度后,實(shí)際的差異很難看出來(lái)式矫。然而乡摹,值確實(shí)是不同的。圖12用一張表展示了金屬和非金屬材質(zhì)的F0值范圍采转。從表中可以觀察到非金屬材質(zhì)之間F0值差異并不明顯聪廉。寶石材質(zhì)是一個(gè)例外,F(xiàn)0值高一點(diǎn)故慈。我們?cè)谥笥懻搶?dǎo)體和絕緣體時(shí)還會(huì)繼續(xù)談到F0板熊。


導(dǎo)體和絕緣體(金屬和非金屬)

在為PBR創(chuàng)建材質(zhì)時(shí),分清楚金屬和非金屬很有用察绷。首先要看物體表面是否是金屬干签。如果是,要遵循一些規(guī)則拆撼。如果不是金屬容劳,則需要遵循另外的規(guī)則喘沿。

當(dāng)然,這只是一種簡(jiǎn)化的思路竭贩,因?yàn)橛幸恍┎馁|(zhì)既不是金屬也不是非金屬蚜印,比如準(zhǔn)金屬,它們介于金屬和非金屬之間娶视。但在創(chuàng)建材質(zhì)的過(guò)程中,除準(zhǔn)金屬之外區(qū)分金屬和非金屬依然是一個(gè)不錯(cuò)的方法睁宰。為了給材質(zhì)建立準(zhǔn)則肪获,我們必須首先知道要?jiǎng)?chuàng)建什么材質(zhì)。使用PBR柒傻,我們來(lái)看一看金屬(導(dǎo)體)和非金屬(絕緣體)的屬性孝赫,然后建立起一系列準(zhǔn)則如圖12所示。

圖12:一些金屬和非金屬材質(zhì)的F0值范圍??

對(duì)于金屬材質(zhì)來(lái)說(shuō)红符,折射光被吸收了青柄,金屬表現(xiàn)出來(lái)的顏色來(lái)自于反射光線,所以在我們的紋理中预侯,不會(huì)給金屬材質(zhì)設(shè)置漫反射顏色致开。

金屬

金屬有良好的導(dǎo)熱和導(dǎo)電性。導(dǎo)電金屬中的電場(chǎng)為零萎馅,當(dāng)由組成光波的電磁場(chǎng)碰到金屬表面時(shí)双戳,一部分光波被反射,而折射的部分全部被吸收糜芳。拋光金屬的反射比非常高飒货,達(dá)到70%-100%(圖13)。

圖13:金屬的鏡面反射反射比在70-100%之間??

一些金屬會(huì)吸收特定波長(zhǎng)的光線峭竣。比如黃金吸收可見(jiàn)光譜中位于高頻端的藍(lán)光塘辅,所以看起來(lái)是黃色。然而皆撩,由于折射光被吸收了扣墩,金屬表現(xiàn)出來(lái)的顏色來(lái)自于反射光。所以扛吞,在我們的貼圖中沮榜,不需要給金屬指定漫反射顏色。舉例來(lái)說(shuō)喻粹,在鏡面反射/光澤度工作流(specular/gloss workflow)中蟆融,金屬的漫反射貼圖(diffuse map)設(shè)置為黑色,而鏡面反射貼圖(specular map)中的反射比值則設(shè)為金屬的顏色守呜。金屬的反射比是RGB值型酥,可以由美術(shù)人員來(lái)調(diào)整山憨。不過(guò)既然我們是使用基于物理的模型,我們需要使用在真實(shí)世界中測(cè)量到的金屬反射比值來(lái)設(shè)置我們的貼圖弥喉。

創(chuàng)建紋理時(shí)金屬需要考慮的另一個(gè)重要方面是易腐蝕性郁竟。風(fēng)化會(huì)大大影響金屬的反射情況。如果金屬生銹了由境,那它的反射性質(zhì)就發(fā)生了改變棚亩。腐蝕的區(qū)域我們會(huì)把它當(dāng)作絕緣體材質(zhì)來(lái)處理,如圖14中顯示虏杰,在金屬度貼圖(metallic map)中腐蝕區(qū)域設(shè)置為黑色讥蟆。我們?cè)诘诙糠謺?huì)將到,金屬度/粗糙度工作流(metallic/roughness workflow)的著色器會(huì)把絕緣體的F0值硬編碼為4%纺阔。圖14中顯示的腐蝕區(qū)域在設(shè)置漫反射顏色的基本色貼圖(base color map)的值就是硬編碼的4%瘸彤。

圖14:腐蝕區(qū)域當(dāng)作絕緣體來(lái)處理,F(xiàn)0值為4%

還有就是笛钝,噴漆的金屬也要當(dāng)作絕緣體而不是金屬來(lái)處理质况。噴漆區(qū)域相當(dāng)于在金屬上面疊加了一層別的材質(zhì)。只有沒(méi)被漆覆蓋暴露在外的原金屬區(qū)域才能當(dāng)作金屬來(lái)處理玻靡。金屬上面的臟點(diǎn)或其他覆蓋物同此理结榄。

正如本章開(kāi)頭所提到的,創(chuàng)建PBR材質(zhì)時(shí)先明確材質(zhì)是金屬還是非金屬非常重要囤捻。更準(zhǔn)確地說(shuō)潭陪,還應(yīng)該包括金屬的狀態(tài):是否噴漆,是否生銹最蕾,是否覆蓋有其他物質(zhì)比如污點(diǎn)油斑等依溯。如果不是原始金屬,則要作為絕緣體來(lái)處理瘟则。由于風(fēng)化會(huì)影響金屬的反射狀態(tài)黎炉,可能會(huì)需要在金屬和非金屬之間做某種混合。

非金屬

非金屬(絕緣體)的導(dǎo)電性能很差醋拧。對(duì)于絕緣體慷嗜,折射光會(huì)被散射和吸收(有的會(huì)重新透出物體表面),所以反射光線的量遠(yuǎn)小于金屬丹壕,而且有漫反射顏色庆械。

我們之前提到過(guò),絕大部分的絕緣體通過(guò)折射率計(jì)算所得的F0值在2-5%之間菌赖。這些值在線性空間0.017-0.067(40-75sRGB空間)范圍內(nèi)缭乘,如圖15。除了一些特殊的非金屬材質(zhì)比如寶石琉用,絕大多數(shù)的絕緣體材質(zhì)F0值不會(huì)超過(guò)4%堕绩。

圖15:sRGB空間和線性空間的轉(zhuǎn)換策幼,使用伽馬值2.2近似——詳見(jiàn)線性空間渲染章節(jié)

像金屬材質(zhì)一樣,理論上我們需要使用真實(shí)世界測(cè)量的值來(lái)設(shè)置絕緣體材質(zhì)的反射比奴紧,但是一些不透明材質(zhì)的折射率是非常難獲得的特姐。然而,大多數(shù)絕緣體材質(zhì)的反射比值之間差異很小黍氮,所以我們可以使用一些準(zhǔn)則來(lái)為它們?cè)O(shè)置反射比值唐含。我們將會(huì)在之后介紹。

常見(jiàn)的絕緣體由折射率計(jì)算所得的F0值在2-5%之間沫浆,如圖15所示捷枯。


線性空間渲染

線性空間渲染是一個(gè)非常復(fù)雜的主題。本文中件缸,我們采用一個(gè)簡(jiǎn)化的觀點(diǎn)铜靶,線性空間渲染保證了光照計(jì)算的數(shù)學(xué)正確性叔遂。在線性空間環(huán)境下他炊,光照交互可以用可靠的真實(shí)世界的方式來(lái)表達(dá)。在線性空間性已艰,伽馬值是1.0痊末,施加的計(jì)算是線性的。為了使渲染出來(lái)的圖像眼睛看起來(lái)是正確的哩掺,還需要對(duì)線性的伽馬值做校正凿叠。

我們的眼睛對(duì)光線亮度的改變的感知是非線性的,意味著眼睛工作在伽馬值大于1.0的環(huán)境下嚼吞。人眼對(duì)暗色調(diào)的感知度強(qiáng)于亮色調(diào)盒件。計(jì)算機(jī)顯視器要根據(jù)人眼的感知度來(lái)顯示圖像使我們看起來(lái)正確,也就是說(shuō)我們看到的顯示器上的顏色使用了非線性的伽馬值舱禽,或者說(shuō)是在伽馬空間(sRGB)炒刁。

顏色值得計(jì)算和針對(duì)顏色的運(yùn)算需要在線性空間性進(jìn)行。我們顏色貼圖中的顏色值誊稚,和我們通過(guò)顯示器上視圖中的顏色選擇控件選取的顏色值翔始,是伽馬編碼的,在進(jìn)行運(yùn)算之前里伯,有一個(gè)處理過(guò)程將它們轉(zhuǎn)換為線性編碼城瞎。在顏色管理工作流中,我們需要將使用到的紋理貼圖進(jìn)行標(biāo)記疾瓮,是線性編碼還是sRGB編碼脖镀。所有的計(jì)算在線性空間(伽馬1.0)下進(jìn)行,最后將渲染結(jié)果再轉(zhuǎn)換到伽馬編碼空間(sRGB)狼电。

更簡(jiǎn)化一點(diǎn)講认然,如果貼圖表示的時(shí)能看到的顏色(漫反射或鏡面反射顏色)补憾,比如金屬的色澤或者草的綠色,那么它應(yīng)該是sRGB編碼卷员。如果貼圖表示的時(shí)數(shù)據(jù)盈匾,比如表面有多粗糙或者材質(zhì)是否金屬,那它應(yīng)該是線性編碼毕骡。

Substance會(huì)自動(dòng)將輸入的sRGB編碼轉(zhuǎn)換成線性削饵,也會(huì)自動(dòng)對(duì)渲染到視口的計(jì)算結(jié)果做伽馬校正。作為美術(shù)人員未巫,在使用Substance軟件的時(shí)候窿撬,我們通常不需要擔(dān)心關(guān)于線性計(jì)算和轉(zhuǎn)換的問(wèn)題。

使用Substance集成插件的時(shí)候叙凡,這些關(guān)于線性空間的轉(zhuǎn)換也會(huì)自動(dòng)處理劈伴。然而,理解這個(gè)過(guò)程還是很重要的:當(dāng)使用Substance導(dǎo)出的貼圖而不是使用Substance材質(zhì)時(shí)握爷,你需要根據(jù)渲染需要手動(dòng)處理這些轉(zhuǎn)換跛璧。

從sRGB空間到線性空間轉(zhuǎn)換的標(biāo)準(zhǔn)定義是:

處于簡(jiǎn)化計(jì)算的需要,本文中以及Substance Designer軟件和Substance Painter軟件中的所有轉(zhuǎn)換新啼,都使用簡(jiǎn)化(近似)的轉(zhuǎn)換函數(shù)來(lái)代替:


PBR的主要特點(diǎn)

我們已經(jīng)探討了基于物理渲染背后的基本原理追城,現(xiàn)在我們可以得出PBR的主要特點(diǎn)了:

1、?能量守恒燥撞。反射光線不可能比入射光線更亮座柱。能量守恒由著色器處理。

2物舒、?菲涅爾色洞。雙向反射分布函數(shù)由著色器處理。對(duì)于大多數(shù)絕緣體冠胯,F(xiàn)0反射比值差異很小且范圍在2-5%之間火诸。金屬的F0值較高,在70-100%涵叮。

3惭蹂、?鏡面反射由雙向反射分布函數(shù),粗糙度或光澤度貼圖割粮,和F0反射比決定盾碗。

4、?光照計(jì)算在線性空間下進(jìn)行舀瓢。所有以伽馬編碼的貼圖如基本色貼圖或漫反射貼圖需要由著色器轉(zhuǎn)換成線性廷雅,你需要在將貼圖導(dǎo)入到游戲引擎或渲染器中時(shí)檢查一下導(dǎo)入選項(xiàng)設(shè)置,以確保轉(zhuǎn)換正確處理。那些描述表面屬性如粗糙度航缀、光澤度商架、金屬度、高度圖等貼圖需要被解釋成線性編碼芥玉。


第二部分?創(chuàng)建基于物理渲染紋理的實(shí)踐指南

在第一部分蛇摸,我們從技術(shù)和理論的角度講解了基于物理渲染。在第二部分灿巧,我們將討論創(chuàng)建PBR紋理的實(shí)踐應(yīng)用赶袄,以及基于第一部分的理論基礎(chǔ)建立一套實(shí)踐準(zhǔn)則。

我們首先從美術(shù)人員的角度重新定義PBR抠藕。然后我們將列出金屬度/粗糙度工作流的準(zhǔn)則饿肺。接下來(lái)是鏡面反射/光澤度工作流,然后比較兩種工作流的差異盾似。最好兩種工作流都通讀敬辣,才能全面了解創(chuàng)建PBR紋理的準(zhǔn)則。

在本文中零院,我們討論的工作流用于Substance工具集溉跃,但是這些創(chuàng)建貼圖的準(zhǔn)則適用于任何其它創(chuàng)建基于物理渲染紋理和材質(zhì)的軟件。

基于物理渲染(PBR)是方法學(xué)而不是硬標(biāo)準(zhǔn)门粪。它是一些指導(dǎo)準(zhǔn)則而不是一成不變的真理喊积,可以有許多不用的實(shí)現(xiàn)方式烹困。每種實(shí)現(xiàn)方式使用的貼圖類(lèi)型和工作流也不盡相同玄妈。GGX雙向反射分布函數(shù)最常用,但也存在其它選擇髓梅。某些實(shí)現(xiàn)會(huì)改變貼圖叫法拟蜻,但內(nèi)在的使用方式是相同的。

在這一部分枯饿,我們將討論兩種最常用的工作流酝锅,金屬度/粗糙度工作流和鏡面反射/光澤度工作流(圖16)。用于創(chuàng)建PBR貼圖的Substance工具集奢方,包括Substance Designer搔扁、Substance Painter和Substance B2M,兩種工作流都支持蟋字。Substance的金屬度/粗糙度和鏡面反射/光澤度PBR著色器使用GGX BRDF稿蹲,同時(shí)沒(méi)有對(duì)粗糙度/光澤度做任何值映射。然而鹊奖,如果需要自定義的值映射苛聘,在Substance中可以很容易實(shí)現(xiàn)。

圖16:金屬度/粗糙度工作流和鏡面反射/光澤度工作流

Substance工具集還支持自定義著色器,你可以將Substance與任何自定義管線做適配设哗。

兩種工作流各自有優(yōu)缺點(diǎn)唱捣,沒(méi)有哪一種比另一種更優(yōu)秀。保證創(chuàng)建出來(lái)的PBR貼圖的正確性的是那些概念和準(zhǔn)則网梢,而不是工作流自身震缭。兩種工作流表達(dá)的時(shí)相同的內(nèi)容,只是實(shí)現(xiàn)方式不同战虏。

什么是PBR蛀序?

基于物理渲染(PBR)是一種著色和渲染方法,它提供了一種更為準(zhǔn)確的表示光和物體表面之間交互的方法活烙。有兩種叫法徐裸,基于物理渲染(PBR)和基于物理著色(PBS)粗合。根據(jù)討論管線的哪個(gè)方面犯助,PBS通常特指著色概念,而PBR特指渲染和光照声怔。然而回懦,兩種表述說(shuō)的都是以物理準(zhǔn)確為立足點(diǎn)來(lái)表現(xiàn)物體的流程气笙。

有什么優(yōu)點(diǎn)?

作為美術(shù)人員怯晕,我們可以從美術(shù)和生產(chǎn)效率角度來(lái)看看PBR的優(yōu)點(diǎn):

1潜圃、PBR避免了設(shè)置反射率等表面屬性時(shí)的猜測(cè)工作,因?yàn)樗姆椒▽W(xué)和算法是以準(zhǔn)確的物理公式為基礎(chǔ)的舟茶。所以創(chuàng)建真實(shí)感資源更容易些谭期。

2、物體在所有光照條件下看起來(lái)都是正確的吧凉。

3隧出、PBR提供了一個(gè)工作流使得創(chuàng)建的作品具有一致性,即便是不同的美術(shù)人員創(chuàng)作的阀捅。

對(duì)美術(shù)人員來(lái)說(shuō)意味著什么胀瞪?

作為美術(shù)人員,我們需要以一種不同以往的方式來(lái)看待這些描述表面屬性的貼圖饲鄙,因?yàn)楝F(xiàn)在計(jì)算機(jī)硬件和渲染系統(tǒng)運(yùn)行我們更精確地去模擬光線的物理行為凄诞。

我們需要拋開(kāi)傳統(tǒng)渲染工作流中漫反射貼圖和鏡面反射貼圖的概念,因?yàn)閭鹘y(tǒng)的漫反射和鏡面反射貼圖只是用來(lái)近似模擬光線與材質(zhì)交互的變通方法忍级。

在PBR中帆谍,著色器負(fù)責(zé)處理能量守恒、雙向反射分布函數(shù)等復(fù)雜物理規(guī)則颤练,作為美術(shù)人員既忆,我們需要?jiǎng)?chuàng)建符合物理原理的貼圖驱负。PBR的科學(xué)性省去了原先設(shè)置材質(zhì)參數(shù)時(shí)需要做的猜測(cè)工作,使我們可以把大量精力放在創(chuàng)作層面上患雇。雖然遵循一些規(guī)范以確保貼圖的正確性很重要跃脊,但也不是說(shuō)我們就要扔掉我們的藝術(shù)靈感。材質(zhì)的特色正是由藝術(shù)視角帶來(lái)苛吱,通過(guò)精心制作的細(xì)節(jié)和表現(xiàn)展示出來(lái)的酪术。物理過(guò)程永遠(yuǎn)不應(yīng)該是美術(shù)人員主要關(guān)心的事情。我們?cè)谝粋€(gè)更物理準(zhǔn)確的環(huán)境下創(chuàng)作并不是意味著我們不能創(chuàng)作風(fēng)格化作品翠储。例如绘雁,迪士尼基于物理反射模型就是作為一個(gè)原則性的觀點(diǎn)設(shè)計(jì)的。它更多是面向藝術(shù)家而不是嚴(yán)格的物理模型援所。知道原則并用來(lái)作為指導(dǎo)很重要庐舟,但不要被束縛住。

作為美術(shù)人員住拭,我們需要以一種不同以往的方式來(lái)看待這些描述表面屬性的貼圖挪略。它們是新的類(lèi)型的貼圖,需要遵循一些規(guī)范和準(zhǔn)則滔岳。


金屬度/粗糙度工作流

金屬度/粗糙度工作流定義了一組通道杠娱,以紋理的方式提供給PBR著色器的采樣器。金屬度/粗糙度工作流特有的貼圖包括基本色貼圖(base color)谱煤、金屬度貼圖(metallic)和粗糙度貼圖(roughness)(圖17)摊求。還有一些貼圖是兩種工作流所公用的,包括全局光遮蔽貼圖(ambient occlusion)刘离、法線貼圖(normal)室叉,可能還有用于視差映射或位移映射的高度圖(height map)(圖18)。

圖17:金屬度/粗糙度工作流
圖18:高度圖和環(huán)境光遮蔽貼圖作為著色器的可選輸入項(xiàng)

在金屬度/粗糙度工作流下寥闪,基本色貼圖中設(shè)置金屬的反射比和非金屬的漫反射顏色太惠。掠射角反射由BRDF處理磨淌。金屬度貼圖作為一個(gè)遮罩來(lái)使用疲憋,用來(lái)區(qū)分基本色貼圖中的數(shù)據(jù)是解釋為金屬還是非金屬。絕緣體的F0值無(wú)法手動(dòng)更改梁只,而是由著色器定義缚柳。當(dāng)著色器發(fā)現(xiàn)在金屬度貼圖中值為黑色時(shí),它將這一區(qū)域當(dāng)作絕緣體來(lái)處理搪锣,使用4%(0.04)的反射比(圖19)秋忙。

圖19:黑色表示非金屬,使用0.04(4%)反射比

我們?cè)诘谝徊糠种姓劦竭^(guò)构舟,4%的反射比覆蓋了絕大多數(shù)的絕緣體材質(zhì)灰追。一定要記住這一點(diǎn),所有的這些如絕緣體F0、金屬的反射比和漫反射顏色亮度范圍等值弹澎,都是從實(shí)際測(cè)量數(shù)據(jù)中得出的朴下。我們將給每一個(gè)貼圖類(lèi)型,基于測(cè)量數(shù)據(jù)苦蒿,建立一系列準(zhǔn)則殴胧。

在第一部分,我們討論過(guò)能量守恒的概念佩迟,即從物體表面反射的光線不可能亮過(guò)射入物體表面的光線团滥。實(shí)現(xiàn)的時(shí)候,一般由著色器來(lái)控制能量守恒报强。Substance中就是這樣的灸姊。只要使用金屬度/粗糙度工作流,能量守恒定律就不可能被打破秉溉。漫反射和鏡面反射之間的平衡由金屬度遮罩貼圖控制厨钻,所以不可能出現(xiàn)漫反射和鏡面反射組合后多于接收到的光線這種情況。

金屬的反射比和非金屬的漫反射顏色一起放在基本色貼圖中坚嗜。

絕緣體F0

普通絕緣體材質(zhì)的F0值一般設(shè)為0.04(線性空間)4%夯膀。在金屬度/粗糙度工作流中,這個(gè)值是硬編碼在著色器中的苍蔬。

在某些金屬度/粗糙度工作流的實(shí)現(xiàn)中诱建,比如Substance工具集和虛幻4引擎,提供了一個(gè)反射比控制接口碟绑,允許藝術(shù)家更改絕緣體的F0常量值俺猿。Substance提供了一個(gè)名稱(chēng)為“specularLevel”的輸出參數(shù)給金屬度/粗糙度PBR著色器,它的表示范圍為0.0-0.08格仲,見(jiàn)圖20押袍。這個(gè)參數(shù)傳給著色器時(shí)是映射到0.0-1.0范圍的,0.5表示反射比4%凯肋。

圖20:Specular Level輸出表示了著色器中絕緣體F0值范圍0.0-0.08

如果你需要手動(dòng)設(shè)置絕緣體的F0值谊惭,Substance Designer軟件中你可以使用Substance graph的specularLevel輸出節(jié)點(diǎn),Substance Painter軟件中你可以使用specularLevel通道侮东,見(jiàn)圖21圈盔。在鏡面反射/光澤度工作流中,你可以完全控制F0值悄雅,那時(shí)我們還會(huì)繼續(xù)深入討論絕緣體的F0值驱敲。

圖21:使用specular level通道自定義絕緣體F0值

基本色貼圖(RGB-sRGB空間)

基本色貼圖是一張RGB貼圖,包含兩種類(lèi)型的數(shù)據(jù):非金屬的漫反射顏色值和金屬的反射比宽闲,見(jiàn)圖22众眨。漫反射顏色代表絕緣體的反射波長(zhǎng)握牧,如第一部分中討論。如果金屬度貼圖中標(biāo)識(shí)為金屬(白色)娩梨,則基本色貼圖中的數(shù)據(jù)代表反射比我碟。

圖22:基本色貼圖中包含非金屬的漫反射顏色和金屬的反射比

創(chuàng)作準(zhǔn)則

基本色貼圖的色調(diào)要平緩一些,和傳統(tǒng)漫反射貼圖相比姚建,對(duì)比度要低一些矫俺。不建議使用太亮和太暗的值。物體的色調(diào)要比我們記憶中的樣子輕一點(diǎn)掸冤。我們可以把這個(gè)明暗范圍可視化表現(xiàn)出來(lái)厘托,在substance中,最暗的材質(zhì)時(shí)煤稿湿,最亮的材質(zhì)時(shí)干凈的白雪铅匹。煤很暗,但它并不是0.0黑饺藤。我們需要在一個(gè)亮度范圍內(nèi)選取顏色包斑。

說(shuō)到亮度范圍,我們指的是絕緣體的反射顏色涕俗。圖23中罗丰,你可以看到一個(gè)值低于正確亮度范圍的例子。對(duì)于亮度下限來(lái)說(shuō)再姑,不應(yīng)該低于30-50sRGB萌抵。容忍度寬松時(shí)可以設(shè)置亮度下限為30sRGB,嚴(yán)格時(shí)設(shè)置為50sRGB元镀。對(duì)于亮度上限绍填,不應(yīng)該高于240sRGB(圖23)。

圖23:絕緣體的基本色取值范圍(反射顏色)

我們說(shuō)過(guò)基本色貼圖中包含的是絕緣體材質(zhì)的反射顏色信息栖疑,需要避免在其中包含光照信息讨永,比如環(huán)境光遮蔽。有一個(gè)例外就是可以添加微觀遮蔽信息遇革,因?yàn)檫@是著色器無(wú)法僅通過(guò)環(huán)境光遮蔽通道來(lái)表達(dá)的細(xì)節(jié)層卿闹,見(jiàn)圖24。然而澳淑,往基本色貼圖中添加微觀遮蔽時(shí)比原,仍然要受亮度值范圍限制。

對(duì)金屬來(lái)說(shuō)杠巡,基本色貼圖中的值是反射比,需要從真實(shí)世界測(cè)量值中獲得雇寇。這些值的范圍在70-100%氢拥,映射到sRGB空間是180-255蚌铜。

圖24:基本色貼圖的例外情況,包含了微觀遮蔽光照信息

在Substance PBR實(shí)用工具章節(jié)嫩海,我們會(huì)將Substance提供的用于預(yù)設(shè)常用材質(zhì)F0值的工具冬殃。Sébastien?Lagarde提供的金屬度/粗糙度圖標(biāo)也是非常好的資源(Lagarde?2014)。

基本色貼圖中的金屬的反射比數(shù)據(jù)需要從真實(shí)世界測(cè)量數(shù)據(jù)中獲得叁怪。

●基本色顏色值代表的是非金屬材質(zhì)的漫反射顏色和金屬材質(zhì)的反射比审葬。

●基本色貼圖中應(yīng)避免包含光照信息,微觀遮蔽除外奕谭。

●非金屬材質(zhì)顏色值最暗不應(yīng)低于30sRGB(最大容忍)到50sRGB(嚴(yán)格范圍)涣觉。

●非金屬材質(zhì)顏色值最亮不應(yīng)高于240sRGB。

●金屬材質(zhì)反射比值要設(shè)置的高一點(diǎn)血柳,70-100%官册,映射到sRGB空間180-255。

基本色貼圖中包含的是金屬的反射比值难捌。在下一節(jié)關(guān)于金屬度貼圖的內(nèi)容中會(huì)看到膝宁,如果污點(diǎn)或氧化層添加到基本色貼圖中,將導(dǎo)致金屬的反射比降低超出一定范圍根吁,不能再被當(dāng)做純金屬员淫。這時(shí)金屬度貼圖也必須加入這些污點(diǎn)或氧化層信息,金屬度的值需要相應(yīng)減小一些表示這些區(qū)域不再是純金屬击敌。在圖25中你會(huì)看到被腐蝕的金屬在金屬度貼圖中設(shè)為黑色满粗,當(dāng)做非金屬來(lái)處理。污點(diǎn)層在金屬度貼圖中采用過(guò)渡的灰色值來(lái)表示愚争。當(dāng)金屬上覆蓋了一層非金屬層比如污點(diǎn)后映皆,金屬度貼圖就不再總是二值化的,非0.0(黑)即1.0(白)了轰枝。

金屬度貼圖的運(yùn)算方式類(lèi)似于一個(gè)遮罩捅彻,它告訴著色器怎樣解讀基本色貼圖中的信息。

圖25:創(chuàng)建金屬度貼圖是必須將金屬的污點(diǎn)和氧化層考慮在內(nèi)??

金屬度貼圖(灰度值-線性空間)

金屬度貼圖用來(lái)定義材質(zhì)中那些區(qū)域是純金屬鞍陨。它是一張灰度圖步淹,當(dāng)作一個(gè)遮罩來(lái)使用,告訴著色器怎樣解讀基本色貼圖中的信息诚撵。

金屬度貼圖中的數(shù)據(jù)不包含直接作為材質(zhì)屬性值使用的真實(shí)世界數(shù)據(jù)缭裆。它僅僅是向著色器描述基本色貼圖中哪些區(qū)域需要被解讀成反射顏色(非金屬),哪些區(qū)域需要被解讀成金屬的反射比寿烟。在金屬度貼圖中澈驼,0.0(黑色——0sRGB)表示非金屬,1.0(白色——255sRGB)代表純金屬筛武。當(dāng)只有純金屬和非金屬是缝其,金屬度貼圖常常是二值化的:非黑即白挎塌,金屬或非金屬。實(shí)際使用時(shí)内边,當(dāng)著色器在金屬度貼圖中看到白色榴都,它就會(huì)在基本色貼圖中相應(yīng)區(qū)域里去取金屬的反射比值,見(jiàn)圖26漠其。

圖26:金屬度貼圖中金屬區(qū)域在基本色貼圖中表示純金屬的反射比??

創(chuàng)作準(zhǔn)則

金屬表面有兩個(gè)重要方面與貼圖相關(guān):第一嘴高,它們的反射比值在70-100%;第二和屎,金屬可能被腐蝕拴驮。我們分別從這兩方面來(lái)看創(chuàng)作準(zhǔn)則。

金屬區(qū)域的反射比必須在70-100%之間眶俩。

純金屬

金屬度貼圖的取值為0或1莹汤,金屬或非金屬,用來(lái)定義純的颠印,拋光的金屬狀態(tài)纲岭。通常的做法是,將純金屬區(qū)域在金屬度貼圖中的灰度值設(shè)置在235-255sRGB之間线罕。在這個(gè)范圍之內(nèi)的金屬區(qū)域相應(yīng)在基本色貼圖中的反射比值要在70-100%之間止潮,也就是映射到sRGB空間的180-255sRGB,如圖27所示钞楼。再一次說(shuō)明喇闸,這些值是基于真實(shí)世界測(cè)量數(shù)據(jù)的。

圖27:金屬度貼圖中金屬區(qū)域的值要設(shè)置為>=235sRGB??

腐蝕區(qū)域或絕緣層

如果物體表面風(fēng)化了询件,則需要考慮金屬的生銹燃乍,或者受其他環(huán)境因素方面影響,比如污垢宛琅。這些情況下刻蟹,金屬需要按非金屬處理。噴漆的金屬也一樣嘿辟。如果噴漆的金屬其中一部分的漆被刮掉了舆瘪,則漏出來(lái)的部分當(dāng)作純金屬(在金屬度貼圖中時(shí)白色),有漆的部分是非金屬(在金屬度貼圖中是黑色)红伦,如圖28所示英古。

圖28:噴漆金屬當(dāng)作非金屬

金屬度貼圖中可以表示金屬和非金屬的混合狀態(tài),用過(guò)渡的灰色來(lái)表示昙读。如果金屬度貼圖中的灰度值低于235sRGB召调,你需要在基本色貼圖中降低該區(qū)域的反射比值。見(jiàn)圖29中所示,純金屬表面部分被一層污垢覆蓋某残。污垢是絕緣體国撵,如果金屬度貼圖中污垢區(qū)域還保留純白色值的話(huà)陵吸,這些污垢區(qū)域在基本色貼圖中的值將被當(dāng)作金屬反射比來(lái)使用玻墅。但污垢的顏色遠(yuǎn)低于拋光金屬表面反射比所需要的值70-100%,違反了物理準(zhǔn)則壮虫。將污垢區(qū)域在金屬度貼圖中相應(yīng)的值降低一些澳厢,就能創(chuàng)建出合適的混合了金屬與非金屬的反射比。

圖29:金屬度貼圖中表示金屬區(qū)域的灰度值應(yīng)該>=235sRGB??

污垢層的透明度可以用來(lái)表示基本色貼圖中反射比值的降低程度囚似。這里沒(méi)有硬性的標(biāo)準(zhǔn)剩拢。本質(zhì)上,相當(dāng)于是從一個(gè)高反射比表面(導(dǎo)體)變到了一個(gè)低反射比表面(絕緣體)饶唤,這種變化程度視情況而定徐伐。

Substance工具集提供了非常簡(jiǎn)單易用的風(fēng)化效果,以及通過(guò)多通道支持將這些效果簡(jiǎn)單應(yīng)用到貼圖通道中募狂。Substance Designer和Substance Painter運(yùn)行你更改Substance效果生成器的參數(shù)办素,來(lái)自動(dòng)調(diào)整Substance效果影響的通道。

例如祸穷,在Substance Designer中性穿,你可以使用Material Color Blend結(jié)點(diǎn)將污垢效果等應(yīng)用到多個(gè)貼圖通道上。在Material Color Blend結(jié)點(diǎn)上雷滚,你可以控制通過(guò)調(diào)整金屬度值滑塊控件來(lái)控制金屬上的污垢層效果需曾,如圖30所示。

圖30:Material color blend結(jié)點(diǎn)祈远。低金屬度值表示一薄層污垢(污垢和金屬的過(guò)渡狀態(tài))??

氧化的或者生銹的金屬需要當(dāng)作非金屬處理呆万,噴漆的金屬同樣。

●金屬度貼圖中的黑色(0.0)是非金屬车份,白色(1.0)是金屬谋减。可以有過(guò)渡的灰度值表示氧化區(qū)或污垢躬充。

●如果金屬度貼圖中的值低于235sRGB逃顶,在基本色貼圖中需要降低該區(qū)域?qū)?yīng)的反射比值。

粗糙度貼圖(灰度值-線性空間)

粗糙度貼圖描述造成光線發(fā)散的物體表面不規(guī)則度充甚,如圖31以政。在第一部分中討論過(guò),反射光方向會(huì)基于表面粗糙度產(chǎn)生隨機(jī)變化伴找。這會(huì)改變光線的方向盈蛮,但光線強(qiáng)度保持不變。粗糙表面的高光看起來(lái)大且模糊技矮。光滑表面則使得鏡面反射聚焦抖誉,看起來(lái)更亮更強(qiáng)烈殊轴,即使是反射的光線總量相同。

圖31:粗糙度貼圖描述造成光線發(fā)散的物體表面不規(guī)則度??

在粗糙度貼圖中袒炉,黑色(0.0)表示光滑表面旁理,白色(1.0)表示粗糙表面。粗糙度貼圖是一個(gè)非常有創(chuàng)造力的貼圖我磁,它允許美術(shù)人員可視化定義表面屬性孽文。允許你發(fā)揮自己的創(chuàng)造力,講一個(gè)關(guān)于物體表面情況的故事夺艰。它的環(huán)境是什么樣的芋哭?是被精心照顧的還是漠不關(guān)心的?是暴露在惡劣環(huán)境中的嗎郁副?物體表面的狀況可以講述周邊環(huán)境的狀況减牺,進(jìn)而關(guān)系到了你的資源的整體設(shè)計(jì)和想要?jiǎng)?chuàng)作的世界。

粗糙度是一個(gè)高度主觀的范疇存谎,完全由作為美術(shù)人員的你來(lái)掌控拔疚。一個(gè)好的創(chuàng)作粗糙度貼圖的起點(diǎn)是法線貼圖。法線貼圖常常包含物體表面的重要細(xì)節(jié)愕贡,這些也應(yīng)該在粗糙度貼圖中表現(xiàn)出來(lái)草雕。

創(chuàng)作準(zhǔn)則

盡情發(fā)揮創(chuàng)造力,講一個(gè)關(guān)于物體表面的視覺(jué)故事固以。

分辨率和紋素密度

使用金屬度/粗糙度工作流的一個(gè)弊端就是會(huì)產(chǎn)生白邊瑕疵墩虹,如圖32所示。這一弊端在鏡面反射/光澤度工作流中同樣存在憨琳。只不過(guò)在鏡面反射/光澤度工作流中的弊端沒(méi)那么明顯诫钓,因?yàn)樗默F(xiàn)象剛好是相反的:是黑邊而不是白邊,見(jiàn)圖33篙螟。

這個(gè)邊緣瑕疵是由紋理插值導(dǎo)致的菌湃,出現(xiàn)在兩種材質(zhì)的過(guò)渡區(qū)域,在這里絕緣體材質(zhì)和高亮金屬材質(zhì)有很強(qiáng)的對(duì)比度遍略。如圖34所示惧所。在金屬度/粗糙度工作流中,基本色貼圖中金屬度反射比的值很亮绪杏,與非金屬的漫反射顏色插值后下愈,就產(chǎn)生了白邊。在鏡面反射/光澤度工作流中蕾久,漫反射貼圖中金屬對(duì)應(yīng)的值是黑色势似,因?yàn)榻饘贈(zèng)]有漫反射顏色。黑色值與非金屬漫反射顏色插值,就形成了黑邊履因。

圖32:金屬度/粗糙度工作流的弊端就是會(huì)產(chǎn)生白邊瑕疵??
圖33:鏡面反射/光澤度工作流的弊端就是會(huì)產(chǎn)生黑邊瑕疵??
圖34:瑕疵出現(xiàn)在兩種材質(zhì)的過(guò)渡區(qū)域

貼圖分辨率和紋素密度會(huì)直接影響邊緣瑕疵的可見(jiàn)性障簿。舉例來(lái)說(shuō),如果你使用了硬筆刷來(lái)創(chuàng)建金屬和非金屬之間的過(guò)渡區(qū)域栅迄,低的貼圖分辨率會(huì)使邊界軟化站故,從而加劇邊緣瑕疵。如果UVs沒(méi)有基于貼圖分辨率作縮放來(lái)適配紋素密度霞篡,也會(huì)導(dǎo)致上述低分辨率問(wèn)題世蔗。給UVs提供一個(gè)合適的紋素密度是優(yōu)化邊緣瑕疵的最好方法募闲,如圖35所示喊熟。

圖35中找岖,兩張貼圖用的都是2048像素分辨率,然而余掖,右邊圖像顯示的UV排版較差,紋素密度較低礁鲁。

貼圖分辨率和紋素密度對(duì)邊緣瑕疵的可見(jiàn)性有直接影響盐欺。

圖35:給UVs提供一個(gè)合適的紋素密度是優(yōu)化邊緣瑕疵的最好方法??

創(chuàng)作準(zhǔn)則

紋素密度和分辨率影響著金屬度/粗糙度工作流的白邊瑕疵的出現(xiàn)。為了優(yōu)化瑕疵仅醇,確保為你的UVs提供合適的紋素密度來(lái)和貼圖分辨率匹配冗美。

金屬度/粗糙度工作流的優(yōu)缺點(diǎn)

優(yōu)點(diǎn)

●使用簡(jiǎn)單,不容易因?yàn)樵O(shè)置了錯(cuò)誤的絕緣體F0數(shù)據(jù)而導(dǎo)致錯(cuò)誤析二。

●貼圖占用內(nèi)存少粉洼,因?yàn)榻饘俣荣N圖和粗糙度貼圖都是灰度值貼圖。

●適用范圍更廣的工作流

缺點(diǎn)

●創(chuàng)建貼圖時(shí)無(wú)法控制絕緣體的F0叶摄。然而属韧,大多數(shù)的實(shí)現(xiàn)提供了額外的控制接口來(lái)重寫(xiě)默認(rèn)的4%值。

●邊緣瑕疵更明顯蛤吓,尤其是在低分辨率情況下宵喂。


鏡面反射/光澤度工作流

同金屬度/粗糙度工作流一樣,鏡面反射/光澤度工作流也定義了一組通道会傲,以紋理的方式提供給PBR著色器的采樣器锅棕。鏡面反射/光澤度工作流特有的貼圖包括漫反射貼圖(diffuse)、鏡面反射貼圖(specular)和光澤度貼圖(glossiness)(圖36)淌山。

圖36:鏡面反射/光澤度工作流

雖然鏡面反射/光澤度工作流使用的貼圖名字比如漫反射貼圖和鏡面反射貼圖聽(tīng)起來(lái)很熟悉裸燎,但是必須要知道這些貼圖和傳統(tǒng)著色中用到的同名貼圖是有區(qū)別的。Substance使用diffuse這個(gè)名稱(chēng)艾岂,另一些應(yīng)用中可能使用albedo這個(gè)名稱(chēng)來(lái)表示漫反射貼圖顺少。早先提到過(guò),PBR著色器還會(huì)使用環(huán)境光遮蔽貼圖、法線貼圖脆炎、可能還有用于視差映射的高度貼圖梅猿,我們將在兩種工作流公用的貼圖章節(jié)中討論。

在鏡面反射/光澤度工作流中秒裕,金屬的反射比和非金屬的F0值放在鏡面反射貼圖中袱蚓。在鏡面反射/光澤度工作流中,有兩張RGB貼圖:一張用于漫反射顏色(漫反射貼圖)几蜻,一張用于反射比(鏡面反射貼圖)喇潘。有了鏡面反射貼圖,我們只通過(guò)貼圖就可以控制絕緣體材質(zhì)的F0值梭稚。

我們?cè)诮饘俣?粗糙度工作流中說(shuō)過(guò)颖低,Substance的PBR著色器控制能量守恒。在鏡面反射/光澤度工作流中弧烤,能量守恒變得更重要了忱屑,因?yàn)橥ㄟ^(guò)鏡面反射貼圖可以完全控制絕緣體F0值。這就意味著貼圖更容易引入錯(cuò)誤的值暇昂。例如莺戒,一個(gè)白色(1.0)的漫反射值和一個(gè)白色(1.0)的鏡面反射值組合,會(huì)反射出比接受到的光線更多的光線急波。因此从铲,這樣的貼圖就不在與實(shí)際情況相一致了。

正如你所看到的澄暮,貼圖中的數(shù)據(jù)內(nèi)容與金屬度/粗糙度工作流是一樣的名段,我們遵循同樣的準(zhǔn)則,不同的只是所使用的貼圖赏寇。如前所述吉嫩,所有數(shù)據(jù)值,如絕緣體F0嗅定、金屬反射比自娩、漫反射顏色的亮度范圍,都是從實(shí)際測(cè)量數(shù)據(jù)中得到的渠退。我們將對(duì)每一種貼圖忙迁,基于測(cè)量數(shù)據(jù)討論它們的準(zhǔn)則。這一章節(jié)中我們不再重復(fù)在金屬度/粗糙度章節(jié)中講過(guò)的詳細(xì)內(nèi)容碎乃,更多關(guān)注鏡面反射/光澤度工作流與金屬度/粗糙度工作流的不同的地方以及需要注意的地方姊扔。

漫反射貼圖(RGB-sRGB空間)

像金屬度/粗糙度工作流中的基本色貼圖一樣,漫反射貼圖中放的也是漫反射顏色梅誓,然而恰梢,其中不包含任何反射比值佛南。

創(chuàng)作準(zhǔn)則

漫反射貼圖中只有漫反射顏色。金屬區(qū)域在漫反射貼圖中是黑色(0.0)嵌言,因?yàn)榻饘贈(zèng)]有漫反射顏色(圖37)嗅回。生銹的金屬區(qū)域是有顏色的,因?yàn)椴辉诒划?dāng)作純金屬來(lái)處理了摧茴。金屬上覆蓋污垢或其他絕緣體層時(shí)同理绵载。

圖37:漫反射貼圖中純金屬區(qū)域的值為黑色(0.0),因?yàn)榻饘贈(zèng)]有漫反射顏色??

漫反射貼圖中關(guān)于色調(diào)的準(zhǔn)則與基本色貼圖相同苛白,金屬區(qū)域除外娃豹,金屬區(qū)域的0.0(黑色)值是允許的,不受亮度范圍準(zhǔn)則的約束购裙。

●漫反射貼圖中的顏色表示非金屬材質(zhì)的漫反射顏色懂版,對(duì)于純金屬來(lái)說(shuō)是黑色(0.0)。

●顏色中不應(yīng)該包含光照信息缓窜,微觀遮蔽除外定续。

●顏色亮度值不能低于30sRGB(高容忍范圍)或50sRGB(嚴(yán)格范圍),除了純金屬區(qū)域的黑色禾锤。

●顏色亮度值不能高于240sRGB。

鏡面反射貼圖(RGB-sRGB空間)

鏡面反射貼圖中定義了金屬的反射比和非金屬的F0值(圖38)摹察。這張RGB貼圖允許給使用到的絕緣體材質(zhì)設(shè)置不同的值恩掷。這與金屬度/粗糙度工作流是不同的,在那里供嚎,絕緣體F0值是硬編碼的4%黄娘,只能通過(guò)“specularLevel”通道來(lái)修改。同我們?cè)诮饘俣?粗糙度工作流中講到的一樣克滴,F(xiàn)0數(shù)據(jù)必須是從真實(shí)世界測(cè)量數(shù)據(jù)中的到的逼争。在這里,絕緣體的F0值可以更暗一點(diǎn)劝赔,金屬的反射比是某種顏色表示對(duì)不同波長(zhǎng)光線的吸收性誓焦。金屬和非金屬的F0值都在一張RGB的鏡面反射貼圖中。

鏡面反射貼圖允許給使用到的絕緣體材質(zhì)設(shè)置不同的值着帽。

圖38:鏡面反射貼圖定義了金屬的反射比和非金屬的F0??

創(chuàng)作準(zhǔn)則

既然鏡面反射貼圖中同時(shí)包含了金屬和非金屬的F0值杂伟,我們將分別針對(duì)每種材質(zhì)類(lèi)型來(lái)討論。

純金屬

F0值應(yīng)該基于真實(shí)世界數(shù)據(jù)仍翰。我們?cè)诮饘俣荣N圖中講過(guò)赫粥,如果金屬表面生銹了,或者覆蓋了其它絕緣體層予借,則反射比值應(yīng)該適當(dāng)減小越平。在鏡面反射/光澤度工作流中频蛔,純金屬表面的污垢區(qū)域或氧化區(qū)域,需要提升在漫反射貼圖中顏色亮度值秦叛,同時(shí)降低在鏡面反射貼圖中的反射比值帽驯,如圖39所示。圖39同時(shí)舉了一個(gè)純金屬表面污垢層的例子书闸。污垢區(qū)域在鏡面反射貼圖中要設(shè)置成適當(dāng)?shù)慕^緣體F0值尼变,在本例中,我們使用的是0.04(4%)浆劲。

圖39:純金屬表面的污垢區(qū)域或氧化區(qū)域嫌术,需要提升在漫反射貼圖中顏色亮度值,同時(shí)降低在鏡面反射貼圖中的反射比值??

絕緣體

絕緣體材質(zhì)的F0值也在鏡面反射貼圖中牌借。這里你可以完全控制F0值度气,但一定要使用正確的數(shù)值。我們?cè)诘谝徊糠种杏懻撨^(guò)膨报,非金屬(絕緣體)導(dǎo)電性能差磷籍,折射光被散射和吸收(有些會(huì)重新透出表面),所以這些材質(zhì)反射的光線量較金屬要少的多现柠。常見(jiàn)絕緣體通過(guò)折射率計(jì)算所得的F0反射比在2-5%之間院领。除了寶石,常見(jiàn)絕緣體材質(zhì)的F0值在0.02-0.05(線性空間)范圍內(nèi)(圖40)够吩。

圖40:常見(jiàn)絕緣體反射比值在2-5%范圍內(nèi)??

sRGB空間下比然,我們使用40-75sRGB之間的值,與線性空間0.02-0.05(2-5%)范圍重合周循。

如果你無(wú)法知道某個(gè)特定材質(zhì)的折射率强法,你可以假設(shè)它的反射比為4%(0.04-塑料)。寶石是一個(gè)例外湾笛,反射比范圍在0.05-0.17(線性空間)饮怯,如圖40所示。在金屬度/粗糙度工作流中嚎研,使用specularLevel通道時(shí)蓖墅,著色器將其映射到0.0-0.08(線性空間)范圍內(nèi),零用于空氣嘉赎,如圖40所示置媳。

●鏡面反射貼圖中包含了絕緣體的F0和純金屬的反射比。

●絕緣體反射的光線量遠(yuǎn)小于金屬公条。常見(jiàn)絕緣體的反射比在2-5%之間拇囊。sRGB空間下,范圍為40-75sRGB靶橱,相當(dāng)于線性空間0.02-0.05寥袭。

●常見(jiàn)寶石的反射比范圍在0.05-0.17(線性空間)路捧。

●常見(jiàn)液體的反射比范圍在0.02-0.04(線性空間)。

●純金屬的反射比在70-100%传黄,映射到180-255sRGB杰扫。

●如果找不到某種材質(zhì)的折射率,可以使用4%(0.04-塑料)膘掰。

光澤度貼圖(灰度值-線性空間)

光澤度貼圖描述造成光線發(fā)散的物體表面不規(guī)則度(圖41)章姓。在這一貼圖中,黑色(0.0)表示粗糙表面识埋,白色(1.0)表示光滑表面凡伊。它與金屬度/粗糙度工作流中的粗糙度貼圖剛好相反。它的創(chuàng)作準(zhǔn)則參考粗糙度貼圖相關(guān)內(nèi)容窒舟。

圖41:光澤度貼圖描述造成光線發(fā)散的物體表面不規(guī)則度

創(chuàng)作準(zhǔn)則

再一次系忙,盡情發(fā)揮創(chuàng)造力,講一個(gè)關(guān)于物體表面的視覺(jué)故事惠豺。

貼圖分辨率和紋素密度

我們之前討論過(guò)兩種工作流下邊緣瑕疵的產(chǎn)生原因银还。在金屬度/粗糙度工作流中做了深入探討,因?yàn)檫吘夎Υ迷谀欠N工作流下更明顯洁墙。我們也提到過(guò)蛹疯,在鏡面反射/光澤度工作流中,因?yàn)榧兘饘贈(zèng)]有漫反射顏色扫俺,所以在漫反射貼圖中存在黑色苍苞。這些黑色和非金屬的漫反射顏色插值后,會(huì)產(chǎn)生黑邊瑕疵狼纬,見(jiàn)圖42。

圖42:鏡面反射/光澤度工作流的弊端是會(huì)產(chǎn)生黑邊瑕疵??

再一次說(shuō)明骂际,貼圖分辨率和紋素密度對(duì)邊緣瑕疵的可見(jiàn)性有直接影響疗琉。如果使用硬筆刷創(chuàng)建金屬和非金屬的過(guò)渡區(qū)域,低分辨率的貼圖會(huì)使邊緣軟化歉铝,進(jìn)而加劇瑕疵盈简。如果UVs沒(méi)有按照貼圖分辨率做合適的紋素密度適配,也會(huì)造成低分辨率問(wèn)題太示。給UVs提供一個(gè)好的紋素密度是控制邊緣瑕疵的最好方法(圖43)柠贤。

圖43:給UVs提供一個(gè)好的紋素密度是優(yōu)化邊緣瑕疵的最好方法??

創(chuàng)作準(zhǔn)則

紋素密度和分辨率影響著鏡面反射/光澤度工作流的黑邊瑕疵的出現(xiàn)。為了優(yōu)化瑕疵类缤,確保為你的UVs提供合適的紋素密度來(lái)和貼圖分辨率匹配臼勉。

鏡面反射/光澤度工作流的優(yōu)缺點(diǎn)

優(yōu)點(diǎn)

●邊緣瑕疵不明顯。

●鏡面反射貼圖中可以更好地控制絕緣體F0餐弱。

缺點(diǎn)

●因?yàn)殓R面反射貼圖中可以控制絕緣體F0宴霸,使得出錯(cuò)的可能性增加囱晴。如果著色器中沒(méi)有正確處理,可能打破能量守恒定律瓢谢。

●多使用了一張RGB貼圖畸写,內(nèi)存使用更大。

●由于使用了與傳統(tǒng)工作流相同的貼圖名稱(chēng)氓扛,但是要求的數(shù)據(jù)不同枯芬,所以容易造成困惑。需要更多的基于物理準(zhǔn)則來(lái)約束采郎,比如正確的絕緣體F0千所,純金屬的黑色漫反射顏色,可能還需要考慮能量守恒如果著色器中沒(méi)有做處理的話(huà)尉剩。


兩種工作流共用的貼圖

環(huán)境光遮蔽(AO)

環(huán)境光遮蔽貼圖定義了物體表面某點(diǎn)可以接收到多少環(huán)境光真慢。它只影響漫反射光,不影響鏡面反射光理茎。某些引擎黑界,像虛幻4引擎,提供了使用屏幕空間反射來(lái)模擬局部反射的選項(xiàng)皂林。最好是結(jié)合屏幕空間反射來(lái)使用環(huán)境光遮蔽朗鸠。

在Substance的PBR著色器中,環(huán)境光(生成自環(huán)境映射)與AO相乘础倍。AO貼圖作為一個(gè)可選通道提供給PBR著色器的紋理采樣器(圖44)烛占。AO不應(yīng)該烘焙到其他紋理貼圖中,只能通過(guò)自己的通道提供給著色器沟启。

AO僅影響漫反射光忆家,不應(yīng)遮蔽鏡面反射光。

圖44:AO不可以烘焙進(jìn)其他紋理貼圖中德迹,只能通過(guò)自己的通道提供給著色器??

創(chuàng)建環(huán)境光遮蔽貼圖

在Substance Designer和Substance Painter中芽卿,AO可以從網(wǎng)格中烘焙生成,或者使用集成的烘焙工具從法線貼圖轉(zhuǎn)換生成胳搞。Substance Designer和Substance Painter中還都提供了一個(gè)HBAO結(jié)點(diǎn)/濾鏡卸例,用來(lái)從高度圖生成horizon-based環(huán)境光遮蔽,能生成與光線追蹤烘焙近似的結(jié)果肌毅,如圖45所示筷转。

圖45:使用Designer中的HBAO結(jié)點(diǎn)或Painter中的HBAO濾鏡可以生成與光線追蹤烘焙近似的結(jié)果??

高度圖

高度圖在渲染中一般用于位移映射。它可以用于視差映射悬而,相比法線映射和凹凸映射呜舒,能產(chǎn)生更真實(shí)的表面起伏細(xì)節(jié)。Substance使用了relief mapping視差映射算法摊滔。高度圖作為PBR著色器的一個(gè)可選輸入通道阴绢,以貼圖的方式提供給PBR著色器的紋理采樣器店乐。在Substance Designer中,你可以使用parallax occlusion或者tessellation?shader(圖46)呻袭。在Substance Painter中眨八,你可以使用displacement通道來(lái)控制視差遮蔽。

圖46:高度圖作為PBR著色器的一個(gè)可選輸入通道左电,以貼圖的方式提供給PBR著色器的紋理采樣器

創(chuàng)建高度圖

同AO一樣廉侧,高度圖也可以在Substance Designer或Substance Painter中使用集成的烘焙工具從網(wǎng)格烘焙生成。在Substance Designer中篓足,你可以使用一個(gè)結(jié)點(diǎn)從法線貼圖生成高度圖(圖47)段誊。在Substance Painter中,你可以直接繪制高度細(xì)節(jié)(圖48)栈拖。

圖47:使用法線轉(zhuǎn)高度結(jié)點(diǎn)從法線生成高度圖??
圖48:直接在網(wǎng)格上繪制高度細(xì)節(jié)??

將高度圖用在實(shí)時(shí)著色器中時(shí)连舍,最好減少貼圖中的高頻細(xì)節(jié)內(nèi)容。高度圖是用來(lái)表示幾何模型表面偏移的大體輪廓的涩哟。一個(gè)好的方法是使用經(jīng)過(guò)模糊的貼圖來(lái)突出輪廓而減少高頻細(xì)節(jié)索赏。使用法線貼圖來(lái)提供高頻細(xì)節(jié),而使用高度圖來(lái)表示偏移的輪廓(圖49)贴彼。如果高度圖是在光線追蹤渲染器用作位移映射潜腻,則高頻細(xì)節(jié)是需要的。

圖49:法線貼圖提供高頻細(xì)節(jié)器仗,高度圖提供輪廓??

法線貼圖

法線貼圖用于模擬物體表面細(xì)節(jié)融涣。它是一張RGB貼圖,每一個(gè)通道分別對(duì)應(yīng)表面法線的X精钮、Y威鹿、Z坐標(biāo)。它可以用來(lái)存儲(chǔ)高精度模型到低精度模型的投影細(xì)節(jié)轨香。在Substance軟件中可以烘焙生成法線貼圖或者從高度圖轉(zhuǎn)換生成法線貼圖专普。

創(chuàng)建法線貼圖

在Substance Designer和Substance Painter中可以使用集成的烘焙工具從網(wǎng)格烘焙生成法線貼圖。在Substance Designer中弹沽,可以使用法線結(jié)點(diǎn)將高度圖轉(zhuǎn)換為法線貼圖,如圖50所示筋粗。在Substance Painter中策橘,可以直接在3D視口繪制法線數(shù)據(jù)(圖51)。

圖50:法線結(jié)點(diǎn)可以從高度圖生成法線圖??
圖51:法線通道可以用來(lái)繪制法線數(shù)據(jù)??

Substance PBR實(shí)用工具

在本章中娜亿,我們將討論一些Substance的實(shí)用工具丽已,可以幫助我們創(chuàng)建PBR貼圖和設(shè)置正確的反射比值。這些工具是基于本文的那些準(zhǔn)則和概念創(chuàng)建的买决。

Substance Designer

PBR Base Material

這是Substance Designer中的一個(gè)結(jié)點(diǎn)沛婴,是一個(gè)用來(lái)創(chuàng)建基礎(chǔ)材質(zhì)的實(shí)用工具吼畏,可以在Material Filters > PBR Utilities下找到,如圖52所示嘁灯。它支持金屬度/粗糙度和鏡面反射/光澤度兩種工作流泻蚊,而且提供了一些常用純金屬材質(zhì)的預(yù)設(shè)。還允許你設(shè)置非金屬的漫反射顏色丑婿。根據(jù)你使用的工作流控制粗糙度或光澤度性雄,有非常多的選項(xiàng)可以設(shè)置。你可以使用貼圖輸入來(lái)設(shè)置材質(zhì)的基本色羹奉、法線秒旋、高度等通道。

圖52:用來(lái)創(chuàng)建基礎(chǔ)材質(zhì)的PBR實(shí)用工具诀拭,實(shí)用預(yù)設(shè)值或自定義貼圖作為輸入??

Dielectric F0

這個(gè)結(jié)點(diǎn)輸出常見(jiàn)絕緣體材質(zhì)的F0值(圖53)迁筛,同樣可以在Material Filters > PBR Utilities下找到。你可以選擇預(yù)設(shè)值耕挨,也可以使用結(jié)點(diǎn)的IOR輸入來(lái)通過(guò)設(shè)置IOR計(jì)算F0值细卧。它是為絕緣體材質(zhì)設(shè)計(jì)的,可以用于鏡面反射/光澤度工作流俗孝。

圖53:用于計(jì)算絕緣體F0的PBR實(shí)用工具酒甸,使用預(yù)設(shè)值或自定義IOR作為輸入??

Metal Reflectance

這個(gè)結(jié)點(diǎn)輸出常見(jiàn)純金屬材質(zhì)的反射比值。在Substance Designer結(jié)點(diǎn)庫(kù)中Material Filters > PBR Utilities路徑下赋铝〔迩冢可以選擇一些金屬的預(yù)設(shè)值,見(jiàn)圖54革骨。

圖54:包含金屬反射比預(yù)設(shè)值的PBR實(shí)用工具??

PBR Metal/Roughness Validate

這個(gè)結(jié)點(diǎn)用在金屬度/粗糙度工作流中农尖,用來(lái)檢查基本色貼圖和金屬度貼圖中的錯(cuò)誤數(shù)據(jù)(圖55)。在Material Filters > PBR Utilities下可以被找到良哲。這個(gè)結(jié)點(diǎn)的輸出是一張熱度圖盛卡,從紅色>黃色>綠色,紅色表示錯(cuò)誤值筑凫,綠色/黃色表示正確值滑沧。對(duì)于金屬,它檢查基本色貼圖中標(biāo)識(shí)為金屬區(qū)域相應(yīng)的F0值(要大于235sRGB)巍实。熱度圖會(huì)顯示出F0值太低的區(qū)域滓技。對(duì)于非金屬的漫反射顏色,它檢查亮度范圍是否正確棚潦。

圖55:用來(lái)檢查漫反射顏色/金屬反射度的PBR實(shí)用工具令漂,輸出一張熱度圖來(lái)顯示正確/錯(cuò)誤值??

PBR Safe Color

這個(gè)結(jié)點(diǎn)用來(lái)校正基本色貼圖或漫反射貼圖中的值,如圖56所示。它確保絕緣體的漫反射顏色亮度值在正確的范圍內(nèi)叠必〖苑酰可以在Material Filters > PBR Utilities下找到。

圖56:用來(lái)檢查基本色貼圖和漫反射貼圖亮度范圍的PBR實(shí)用工具??

Conversion

BaseColor_metallic_roughness_converter

這個(gè)結(jié)點(diǎn)將金屬度/粗糙度工作流生成的貼圖轉(zhuǎn)換成各種渲染器所使用的貼圖纬朝,可以在Material Filters > PBR Utilities下找到收叶。支持的渲染器包括:

●Vray(GGX)

●Corona

●Corona 1.6

●Redshift 1.x*

●Arnold 4(aiSurface)*

●Arnold 4(aiStandard)*

●Renderman(pxrSurface)

*Arnold 5支持基本色貼圖/金屬度貼圖/粗糙度貼圖工作流。

*Redshift 2.x支持基本色貼圖/金屬度貼圖/粗糙度貼圖工作流玄组。

Substance Painter

PBR Metal/Roughness Validate (filter)

這個(gè)濾鏡用在金屬度/粗糙度工作流中滔驾,用來(lái)檢查基本色貼圖和金屬度貼圖中的錯(cuò)誤數(shù)據(jù)(圖57)。這是一個(gè)免費(fèi)的濾鏡俄讹,可以從Substance Share上下載哆致。

https://share.allegorithmic.com/libraries/824

這個(gè)濾鏡的輸出是一張熱度圖,從紅色>黃色>綠色患膛,紅色表示錯(cuò)誤值摊阀,綠色/黃色表示正確值。對(duì)于金屬踪蹬,它檢查基本色貼圖中標(biāo)識(shí)為金屬區(qū)域相應(yīng)的F0值(要大于235sRGB)胞此。熱度圖會(huì)顯示出F0值太低的區(qū)域。對(duì)于非金屬的漫反射顏色跃捣,它檢查亮度范圍是否正確漱牵。

要在Substance Painter中使用它,就需要將它導(dǎo)入到Substance Painter工程中疚漆,并標(biāo)記為Filter類(lèi)型酣胀,或者將它拷貝到你的Shelf目錄下的Filter文件夾中。

圖57:用來(lái)檢查漫反射顏色/金屬反射度的PBR實(shí)用工具娶聘,輸出一張熱度圖來(lái)顯示正確/錯(cuò)誤值??

Substance輸出和渲染

Substance Source上的Substance材質(zhì)同時(shí)支持金屬度/粗糙度和鏡面反射/光澤度兩種工作流闻镶。這些材質(zhì)用于那些支持實(shí)時(shí)的基于物理的著色器中,比如虛幻4和Unity丸升∶基本色/金屬度/粗糙度材質(zhì)可以用于支持金屬度工作流的光線追蹤渲染器比如Arnold中。鏡面反射/光澤度貼圖只能用于實(shí)時(shí)著色器狡耻。根據(jù)使用的渲染器不同墩剖,有的可以直接使用基本色/金屬度/粗糙度貼圖,有的需要做一些轉(zhuǎn)換夷狰。

從Substance Share上下載到的自定義材質(zhì)或資源可能沒(méi)有某個(gè)制定渲染器的合適貼圖輸出涛碑,因?yàn)樗鼈兇蠖嘀话旧?金屬度/粗糙度貼圖輸出。所以你需要清除你的材質(zhì)需要的輸入類(lèi)型孵淘,然后才能正確定制Substance的材質(zhì)輸出來(lái)轉(zhuǎn)換成你需要的類(lèi)型。

例如歹篓,在Arnold 5中你可以直接使用金屬度/粗糙度貼圖瘫证。然而揉阎,對(duì)于Vray材質(zhì),你需要將金屬度/粗糙度工作流的輸出貼圖轉(zhuǎn)換成鏡面反射貼圖和1/IOR貼圖背捌。Substance Painter支持一些第三方渲染器配置毙籽,如圖58所示。

圖58:Substance Painter的導(dǎo)出設(shè)置支持流行渲染器諸如Arnold毡庆、Vray坑赡、Keyshot、Corona么抗、Redshift??

Substance集成插件的目的就是自動(dòng)將Substance的輸出材質(zhì)轉(zhuǎn)換成適用于特定渲染器毅否。例如,3ds Max Substance插件有用于Arnold、Vary和Corona的預(yù)設(shè)。選擇某個(gè)預(yù)設(shè)就可以將Substance輸出自動(dòng)轉(zhuǎn)換為這些渲染器所使用的格式(圖59)坡倔。

圖59:使用Corona預(yù)設(shè)將自動(dòng)轉(zhuǎn)換Substance輸出并創(chuàng)建Corona材質(zhì)??

想要獲取更多關(guān)于Substance Painter和Substance Designer(Substance材質(zhì))用于第三方渲染器的相關(guān)信息似扔,請(qǐng)參閱Substance官方的渲染文檔。

https://support.allegorithmic.com/documentation/display/integrations/Rendering


附錄-圖表

表面是金屬嗎揍移?

把物體表面分成金屬和非金屬兩類(lèi)很有幫助。在開(kāi)始創(chuàng)建紋理之前,先要考察材質(zhì)是否金屬黍图。帶著這個(gè)問(wèn)題,你可以在創(chuàng)建材質(zhì)過(guò)程中遵循一些我們講過(guò)的準(zhǔn)則奴烙,見(jiàn)圖60和61助被。圖60使用金屬度/粗糙度工作流,圖61使用鏡面反射/光澤度工作流缸沃。

圖60:表面是金屬嗎恰起?金屬度/粗糙度工作流


圖61:表面是金屬嗎?鏡面反射/光澤度工作流??

反射比值

圖62顯示了絕緣體的F0值范圍趾牧。絕緣體反射的光線量少于金屬检盼。常見(jiàn)絕緣體材質(zhì)的反射比在2-5%之間。sRGB空間下翘单,在40-75sRGB之間吨枉,線性空間下0.02-0.05范圍。

圖62:常見(jiàn)絕緣體的F0值

在圖63中哄芜,既有絕緣體的F0值也有金屬的反射比值貌亭。對(duì)于金屬來(lái)說(shuō),反射比在10-100%之間认臊,映射至sRGB空間180-255sRGB圃庭。

圖63:絕緣體的F0值和金屬度反射比值

從sRGB空間到線性空間的轉(zhuǎn)換使用伽馬2.2近似。詳見(jiàn)第一部分線性空間渲染相關(guān)章節(jié)。

正確值/錯(cuò)誤值對(duì)比

在圖64中剧腻,舉了一個(gè)金屬度/粗糙度工作流下創(chuàng)建的正確貼圖和錯(cuò)誤貼圖對(duì)比的例子拘央。在金屬度貼圖中,污垢層被錯(cuò)誤標(biāo)記為純金屬了书在。還有灰伟,基本色貼圖中金屬的反射比設(shè)置的太低,不在10-100%范圍內(nèi)儒旬。

圖64:正確和錯(cuò)誤貼圖對(duì)比——金屬度/粗糙度工作流1.金屬度貼圖中污垢層錯(cuò)誤標(biāo)記成了純金屬2.基本色貼圖中金屬的反射比設(shè)置的太低??
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末栏账,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子栈源,更是在濱河造成了極大的恐慌挡爵,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件凉翻,死亡現(xiàn)場(chǎng)離奇詭異了讨,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)制轰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén)前计,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人垃杖,你說(shuō)我怎么就攤上這事男杈。” “怎么了调俘?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵伶棒,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我彩库,道長(zhǎng)肤无,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任骇钦,我火速辦了婚禮宛渐,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘眯搭。我一直安慰自己窥翩,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布鳞仙。 她就那樣靜靜地躺著寇蚊,像睡著了一般。 火紅的嫁衣襯著肌膚如雪棍好。 梳的紋絲不亂的頭發(fā)上仗岸,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天允耿,我揣著相機(jī)與錄音,去河邊找鬼爹梁。 笑死右犹,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的姚垃。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼盼忌,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼积糯!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起谦纱,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤看成,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后跨嘉,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體川慌,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年祠乃,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了梦重。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡亮瓷,死狀恐怖琴拧,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情嘱支,我是刑警寧澤蚓胸,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站除师,受9級(jí)特大地震影響沛膳,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜汛聚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一锹安、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧贞岭,春花似錦八毯、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至芯侥,卻和暖如春泊交,著一層夾襖步出監(jiān)牢的瞬間乳讥,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工廓俭, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留云石,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓研乒,卻偏偏與公主長(zhǎng)得像汹忠,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子雹熬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容