【技術(shù)分享】Unity5 中基于物理的著色器 (轉(zhuǎn))

什么是基于物理的著色呢卧土?

基于物理的著色(簡稱PBS)就是以某種方式模擬現(xiàn)實(shí)中材質(zhì)和光照的相互作用惫皱。直到最近PBS才可以應(yīng)用在實(shí)時(shí)圖形渲染中。這種方法在需要光照和材質(zhì)更加直觀和逼真地協(xié)同工作的場(chǎng)合下優(yōu)勢(shì)非常明顯夸溶。

基于物理著色的想法是創(chuàng)建一種友好的方式來實(shí)現(xiàn)在不同的光照條件下的逼真效果逸吵。它模擬光線在現(xiàn)實(shí)中的行為,而不是使用多個(gè)特定的模型來模擬缝裁,因?yàn)楹笳呖赡軙?huì)在一些情況下失效扫皱。

為實(shí)現(xiàn)這種效果它要遵循物理原理,包括能量守恒(也就是物體反射出去的光量不可能超過所接收的光量)捷绑,F(xiàn)resnel反射(所有表面反射在掠射角處更加強(qiáng)烈)韩脑,以及物體表面如何自我遮擋(幾何術(shù)語)等。

Unity 5包含了若干標(biāo)準(zhǔn)著色器(Standard Shader)粹污,它們共同組成了一個(gè)完整的PBS光照明模型段多,且非常易于使用。標(biāo)準(zhǔn)著色器(Standard Shader)主要是針對(duì)硬質(zhì)表面(也就是建筑材質(zhì))而設(shè)計(jì)的壮吩,可以處理大多數(shù)現(xiàn)實(shí)世界的材質(zhì)进苍,例如石頭加缘、陶瓷、銅器觉啊、銀器或橡膠等拣宏。但它也可以非常出色地處理一些非硬質(zhì)表面的材質(zhì),例如皮膚杠人、頭發(fā)或布料等勋乾。

跟“我的”游戲內(nèi)容有何關(guān)聯(lián)?

需要注意的是:基于物理的著色器并不一定意味著“真實(shí)”嗡善,單純地施加限制也不一定就能完全決定游戲表現(xiàn)辑莫。基于物理的著色器適用于多種不同的美術(shù)風(fēng)格和美學(xué)效果罩引,例如從精確掃描(Accurately Scanned)各吨,到傳統(tǒng)拍照(Traditionally Photographed),再到手工繪制(Hand-painted)的各類紋理袁铐。

對(duì)于編寫無需特殊光照表現(xiàn)的2D游戲的人們來說,PBS不是必需的選項(xiàng)绅你。但是,如果你想玩轉(zhuǎn)PBS昭躺,即基于Standard Shader來創(chuàng)建出酷炫的效果忌锯,在這里我們將提供一些有用的使用經(jīng)驗(yàn)。

一窺究竟

當(dāng)我們談及中的光照時(shí)领炫,不妨引入兩個(gè)概念偶垮,即Context和Content:Context是指Unity原生的一些內(nèi)容;而Content則是用戶創(chuàng)造的內(nèi)容(類似于UGC)帝洪。

關(guān)于CONTEXT

當(dāng)給一個(gè)對(duì)象添加光照時(shí)似舵,了解該對(duì)象周邊的環(huán)境是非常重要的。Unity的先前版本中已經(jīng)提供了一些經(jīng)典的輔助工具葱峡,例如光照探頭砚哗,它能夠?qū)δ硞€(gè)位置上的漫反射光照進(jìn)行采樣。而在Unity 5中砰奕,我們將提供用于描述周圍環(huán)境信息的更加有效的方式蛛芥。



縱覽全局

HDR信息是PBS中一個(gè)非常重要的元素。它能夠更加有效地描述環(huán)境信息军援,例如仅淑,太陽的明亮度可能會(huì)超過藍(lán)天10倍。Unity5中提供了一個(gè)原生的通道來處理HDR格式的文件胸哥,你可以直接導(dǎo)入后綴為.hdr和.exr的圖片資源涯竟。



添加發(fā)光效果

反射探頭(Reflection Probe)表達(dá)了某個(gè)確定位置的反射情況。Unity5的場(chǎng)景中會(huì)默認(rèn)包含一個(gè)反射探頭(你可以依次點(diǎn)擊Edit->Scene Render Settings->Default Reflection來查看它)。你可以對(duì)其設(shè)置進(jìn)行修改庐船,或者干脆依賴于天空盒且不設(shè)置具體位置银酬。

當(dāng)然,你也可以創(chuàng)建自己的反射探頭(Reflection Probe)筐钟。只需依次點(diǎn)擊GameObject->Light->Create Reflection probe即可.

然后你就可以進(jìn)行如下操作:

你可以將反射探頭(Reflection Probe)拖動(dòng)到場(chǎng)景中的任意位置捡硅,它就開始主動(dòng)獲取周圍環(huán)境的光照信息了。

每個(gè)反射探頭(Reflection Probe)都有其作用域(就是探頭周圍顯示的黃色包圍盒)盗棵。作用域內(nèi)的物體將從反射探頭上獲取其反射信息。



更多的逐像素著色:

由于Unity5提供的動(dòng)態(tài)全局光照特性北发,光照探針也包含了間接的光線反射信息纹因,并通過標(biāo)準(zhǔn)著色器作用于每個(gè)像素奢方。這樣再芋,不管光線是直接或間接地作用于法線貼圖,它的效果看起來都會(huì)更棒瓢喉。

動(dòng)態(tài)全局光照

全局光照是PBS支持環(huán)境中Context層面的重要組成部分狱庇。為了對(duì)Unity5中的全局光照有一個(gè)全面的理解惊畏,最好的方法是查看我們發(fā)表的有關(guān)動(dòng)態(tài)全局光照的博客文章。

顏色空間

PBS和標(biāo)準(zhǔn)著色器都工作在線性和Gamma模式密任。HDR編碼颜启、反射探針的數(shù)據(jù)以及其他Content都會(huì)與你選擇的顏色空間相適應(yīng)。但無論何時(shí)浪讳,為了達(dá)到最佳的(最讓人舒適的)視覺效果缰盏,你應(yīng)該盡可能保持在線性顏色空間。

內(nèi)容

內(nèi)容是你直接創(chuàng)建的數(shù)據(jù)淹遵,標(biāo)準(zhǔn)著色器確實(shí)針對(duì)Unity中傳統(tǒng)的材質(zhì)工作流程進(jìn)行了的一些改進(jìn)口猜,希望你能接受并喜歡。



材質(zhì)編輯器

標(biāo)準(zhǔn)著色器還引入了一個(gè)新的材質(zhì)編輯器透揣,它使PBS的材質(zhì)編輯工作比以前的非PBS材質(zhì)更簡單济炎。

新編輯器更加精簡,但卻提供了材質(zhì)的所有可能選項(xiàng)辐真。在新編輯器中须尚,我們不需要選用不同的著色器來改變紋理通道;不會(huì)再出現(xiàn)“texture unused, please choose another shader” 這樣的提示侍咱;不再需要通過切換著色器來改變混合模式恨闪。

你會(huì)有一些備選的紋理通道,無需強(qiáng)制使用放坏,任何一個(gè)閑置通道的相關(guān)代碼都會(huì)在編譯時(shí)被優(yōu)化掉咙咽,因此不用擔(dān)心效率問題。Unity會(huì)根據(jù)你輸入到編輯器中的任何數(shù)據(jù)來生成正確的代碼淤年,使它以最高的效率運(yùn)行钧敞。

小貼士:你可以用ctrl+點(diǎn)擊紋理的方式預(yù)覽大圖蜡豹,并且還可以分別查看顏色和Alpha通道。

按你預(yù)想的方式點(diǎn)亮一切溉苛!

PBS當(dāng)然和Unity5的動(dòng)態(tài)全局光照工作流程是兼容的镜廉,全局光照系統(tǒng)完全了解標(biāo)準(zhǔn)著色器的工作方式,并在渲染場(chǎng)景時(shí)將其考慮在內(nèi)愚战。

PBS和全局光照的合璧娇唯,使得快速改變整個(gè)場(chǎng)景的光照條件變成可能,效果也更逼真寂玲。

對(duì)下圖中的這個(gè)小鎮(zhèn)塔插,你會(huì)注意到它和本文開頭的那幅圖有不同的光照設(shè)置。靜態(tài)物體看起來更有質(zhì)感和層次感拓哟,整個(gè)場(chǎng)景錯(cuò)落有致想许。這正是PBS的魔力所在。一旦材質(zhì)加以PBS方式構(gòu)建断序,它就會(huì)變得和光照條件完全獨(dú)立流纹,從而大大減少工作量!

這就是我們喜歡它的理由违诗,也是我們認(rèn)為你們也會(huì)喜歡它的理由漱凝!


轉(zhuǎn)自:http://www.manew.com/thread-31111-1-1.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市诸迟,隨后出現(xiàn)的幾起案子碉哑,更是在濱河造成了極大的恐慌,老刑警劉巖亮蒋,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件扣典,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡慎玖,警方通過查閱死者的電腦和手機(jī)贮尖,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來趁怔,“玉大人湿硝,你說我怎么就攤上這事∪笈” “怎么了关斜?”我有些...
    開封第一講書人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長铺浇。 經(jīng)常有香客問我痢畜,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任丁稀,我火速辦了婚禮吼拥,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘线衫。我一直安慰自己凿可,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開白布授账。 她就那樣靜靜地躺著枯跑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪白热。 梳的紋絲不亂的頭發(fā)上敛助,一...
    開封第一講書人閱讀 49,111評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音棘捣,去河邊找鬼。 笑死休建,一個(gè)胖子當(dāng)著我的面吹牛乍恐,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播测砂,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼茵烈,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了砌些?” 一聲冷哼從身側(cè)響起呜投,我...
    開封第一講書人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎存璃,沒想到半個(gè)月后仑荐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡纵东,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年粘招,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片偎球。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡洒扎,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出衰絮,到底是詐尸還是另有隱情袍冷,我是刑警寧澤,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布猫牡,位于F島的核電站胡诗,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜乃戈,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一褂痰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧症虑,春花似錦缩歪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至习贫,卻和暖如春逛球,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背苫昌。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來泰國打工颤绕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人祟身。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓奥务,卻偏偏與公主長得像,于是被迫代替她去往敵國和親袜硫。 傳聞我的和親對(duì)象是個(gè)殘疾皇子氯葬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

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