包含15節(jié)視頻教程
關(guān)注21.4萬(wàn)次
讓你全面了解和掌握udk虛幻編輯器的教程。包含次世代制作技術(shù)。各種腳本的應(yīng)用。各種操控器的詳細(xì)講解。讓你也可以獨(dú)立制作有趣的游戲場(chǎng)景!
HDRi的全稱(chēng)是high?dynamic?range?image,意思是高動(dòng)態(tài)范圍圖片。最近的這些年已經(jīng)非常的火熱了。使用一張HDR圖片或者再另外補(bǔ)一兩盞燈光作為場(chǎng)景的照明,已經(jīng)是越來(lái)越普及的做法。而很多對(duì)這種圖片以及這種照明方案了解不深的朋友心里可能總有個(gè)疑惑——在以前的CG行業(yè)里,照明是一件非常復(fù)雜的事情,一個(gè)場(chǎng)景經(jīng)常要打幾十甚至上百盞燈光才能得到好效果。怎么到了現(xiàn)在只需要一張圖片就解決照明問(wèn)題了?世界上有這么輕巧的事情啊?
世界上就有這么輕巧的事情。CG行業(yè)是一個(gè)發(fā)展非常迅速的行業(yè),往往你上個(gè)月還在用的軟件,這個(gè)月就出了新版本;你上個(gè)月還在使用的工作流程,這個(gè)月已經(jīng)有了更快的解決方案。在這樣一個(gè)日新月異的行業(yè)里,照明的解決方案,也當(dāng)然飛速地發(fā)展了。以前要手動(dòng)打很多盞燈光來(lái)照明的主要原因是機(jī)器性能不行,跑GI(全局照明)太慢,所以要手動(dòng)打補(bǔ)光,人為處理出全局照明的感覺(jué)。然而時(shí)代進(jìn)步了,機(jī)器速度已經(jīng)幾何級(jí)增長(zhǎng)了,現(xiàn)在大家都用得起GI了,理論上完全不需要再依賴(lài)手動(dòng)打補(bǔ)光了。你可以選擇在場(chǎng)景中設(shè)置跟真實(shí)世界接近的光源,或者你還有這樣的選擇:使用一種HDRi貼圖來(lái)照亮你的場(chǎng)景。
因?yàn)榇蟛糠峙笥言缇蛯DR照明應(yīng)用到自己的工作流程中去了,所以,這篇文章的內(nèi)容對(duì)于大部分朋友來(lái)說(shuō)都會(huì)很熟悉。如果你已經(jīng)知道怎么去運(yùn)用,而對(duì)這背后的原理和邏輯有一定興趣的話(huà),可以看看理論部分。而這次的教程更傾向于對(duì)HDR并不太了解的新手朋友,相信你們看完這次的教程,會(huì)對(duì)HDR的概念原理有一定的認(rèn)知,并且知道該怎么使用HDR對(duì)自己的場(chǎng)景進(jìn)行照明。
雖然本教程使用三維軟件為maya,渲染器是mental?ray和vray。但是講述的原理是完全可以互通的,你只要理解透了這些概念,方法拿到哪里都是一樣適用的。
全文分理論部分,CG領(lǐng)域中的應(yīng)用部分,和噪點(diǎn)問(wèn)題的解決方案三大塊兒。
其中理論部分梳理了完備的理論體系,全部消化吸收能夠讓你對(duì)整個(gè)CG技術(shù)的認(rèn)知有所提高,說(shuō)起來(lái)適合所有人閱讀,但是如果你對(duì)理論頭大也可以先跳過(guò)或暫時(shí)跳過(guò)理論部分直接從實(shí)戰(zhàn)部分開(kāi)始看起。
CG領(lǐng)域中的應(yīng)用部分則著重介紹在CG領(lǐng)域里怎么運(yùn)用HDR技術(shù),以及HDR技術(shù)給我們帶來(lái)的好處到底體現(xiàn)在哪里,適合新手,或者知其然不知其所以然的朋友。這一部分觀(guān)看視頻會(huì)吸收得更好。
如果你已經(jīng)是個(gè)高手了,那么可以直接跳過(guò)前面兩個(gè)部分,到達(dá)這次教程在實(shí)戰(zhàn)意義上真正精華的最后一部分——噪點(diǎn)問(wèn)題的解決方案,你將了解解決采用HDR照明時(shí)GI通道和reflection通道噪點(diǎn)問(wèn)題的完美方案。
HDRi是一種類(lèi)型的圖片的統(tǒng)稱(chēng),同時(shí)也是一種圖片格式。所謂HDR就是高動(dòng)態(tài)范圍圖片,和它對(duì)應(yīng)的一個(gè)概念是LDRi(low?dynamic?range?image),低動(dòng)態(tài)范圍圖片。而我們?nèi)粘J褂玫拇蟛糠謭D片,幾乎都是LDR,不管是我們的jpg、png、tga還是tiff,都是低動(dòng)態(tài)范圍。而我們現(xiàn)在用的最多的HDR圖片格式主要有兩種:openEXR和HDR。
那么這個(gè)動(dòng)態(tài)范圍又是什么,怎么劃分的呢?
這本來(lái)是一個(gè)攝影的概念,說(shuō)起來(lái)復(fù)雜,相信看這文章的都是搞CG的,我就從CG的角度簡(jiǎn)單地說(shuō)些有用的。在我們的認(rèn)知領(lǐng)域里,你可以把動(dòng)態(tài)范圍簡(jiǎn)單地理解為一個(gè)圖片所能涵蓋的信息量。涵蓋的信息量越多,那么動(dòng)態(tài)范圍越大,反之亦反。
這里就要說(shuō)一個(gè)“位深度”的概念了。我們都知道,電腦是二進(jìn)制的,只有0和1,而你可以把位想象成一個(gè)開(kāi)關(guān),當(dāng)這個(gè)位等于1的時(shí)候,開(kāi)關(guān)打開(kāi);當(dāng)這個(gè)位等于0的時(shí)候,開(kāi)關(guān)關(guān)閉。所以,每一個(gè)位,有兩種可能。
而如果我有兩個(gè)位,或者說(shuō)兩個(gè)開(kāi)關(guān)呢?它們放在一起會(huì)有多少種組合?答案是4種,分別為:00,01,10,11。
那么,如果有三個(gè)位,或者說(shuō)三個(gè)開(kāi)關(guān),又有幾種可能?答案是8種,分別為:000,001,010,011,100,101,110,111。
那么,如果是四個(gè)位呢?答案是16種。聰明的朋友應(yīng)該已經(jīng)發(fā)現(xiàn)規(guī)律了:有多少位,就有2的多少次方種可能。這其實(shí)是高中的排列組合知識(shí),我給大家義務(wù)復(fù)習(xí)了一下。
看到這里有人會(huì)說(shuō)了,我是做美術(shù)的,你跟我說(shuō)這些亂七八糟的數(shù)學(xué)知識(shí)搞毛呢?其實(shí)你不要急躁,了解這些知識(shí),才能讓你完全吃透,并且駕馭你所使用的流程與工具。很快我就要講到,這些數(shù)學(xué)和計(jì)算機(jī)知識(shí)跟我們的CG是怎么聯(lián)系的。
可能有的朋友一直有聽(tīng)說(shuō)過(guò),我們的圖片也有位數(shù)。比如說(shuō),我們的jpg圖片就是8位的。而很多人只是知道,卻并不真正了解這到底意味著什么。根據(jù)我們前面說(shuō)的知識(shí),8位即意味著2的8次方種可能,即為256種可能。相信很多朋友看到這個(gè)數(shù)字心里會(huì)一激靈,因?yàn)橛悬c(diǎn)ps基礎(chǔ)的朋友都知道,我們的圖片放進(jìn)ps里是有256個(gè)色階的。這二者是不是有什么聯(lián)系?你猜的不錯(cuò)。
我們說(shuō)的8位的jpg圖片,真正的說(shuō)法應(yīng)該是:每個(gè)像素每個(gè)通道使用8個(gè)二進(jìn)制位儲(chǔ)存信息的圖片。
對(duì)于儲(chǔ)存顏色信息,我打一些比方,如果你只有一個(gè)位去儲(chǔ)存信息,那么你就只有開(kāi)或者關(guān)兩種可能,如果你用開(kāi)表示純白色,關(guān)表示純黑色,那么你就的世界就只有黑與白;如果你使用兩個(gè)位去記錄信息,那么你就有四種可能,你就可以在純黑和純白之間再加入兩個(gè)過(guò)度的灰色。
那么,你要是使用8個(gè)位共產(chǎn)生256種可能,亦即是256個(gè)色階,從黑到白有一個(gè)均勻的灰度過(guò)度。
你一定要弄明白,到這里為止,就算你有8個(gè)位,256個(gè)色階,你也暫時(shí)只能制造出灰色的過(guò)度色階。而如果你想要彩色的照片的話(huà),你還要讓這些灰度的色階產(chǎn)生顏色,想要表達(dá)大自然絢麗的色彩,我們是使用三種純純的顏色,分別發(fā)出不同的亮度,復(fù)合在一起而產(chǎn)生出來(lái)的。這三種顏色就是我們頂頂大名的RGB紅綠藍(lán)了。
我大概描述下這個(gè)過(guò)程。比如說(shuō)紅通道,只能發(fā)紅光,而紅光的強(qiáng)度,根據(jù)你的色階來(lái)定:色階為0,則是純黑的紅色,色階為128,半亮的紅色,色階為255,則為純純的最亮的紅色(0-255一共256個(gè)色階)。同時(shí)綠通道和藍(lán)通道也是一樣,發(fā)出某種強(qiáng)度的光,最后把他們復(fù)合在一起,就產(chǎn)生我們所見(jiàn)的顏色。
也就是說(shuō),我們彩色的jpg圖片,每個(gè)像素點(diǎn)都有三個(gè)通道,每個(gè)通道都有8位,于是每個(gè)像素就需要24位來(lái)記錄色彩信息。到這里,我們可以做一個(gè)簡(jiǎn)單的小實(shí)驗(yàn)來(lái)驗(yàn)證我們前面探討的知識(shí)點(diǎn)。在計(jì)算機(jī)中,1位即是1Bit,8個(gè)位占一個(gè)字節(jié),即是1byte。而我們平時(shí)說(shuō)的1kb則為1024byte,1Mb?為1024kb。那么根據(jù)我們剛才的說(shuō)法,每個(gè)像素都占24位的空間,即是3byte的空間,那么我們創(chuàng)建一個(gè)1024*1024的圖片,就有1024*1024*3byte=3MB的大小了。我們可以在ps里創(chuàng)建這么大一張圖然后看看ps算出來(lái)的大小。果然論證了我們的說(shuō)法。
在你儲(chǔ)存TGA圖片格式的時(shí)候,你會(huì)發(fā)現(xiàn),ps會(huì)為你,到底要儲(chǔ)存多少位的圖片。我們主要關(guān)心的是24位和32位兩種。根據(jù)之前說(shuō)的知識(shí),你大概可以猜到,24位的圖片,意思是,24位/像素,即3個(gè)通道每像素;而32位怎么來(lái)的呢?32 = 4*8;也就是說(shuō),4個(gè)通道每像素?是的。那這多出來(lái)的通道是啥?其實(shí)就是我們平時(shí)說(shuō)的alpha通道了。如果你做了一個(gè)帶alpha通道的TGA圖片,儲(chǔ)存的時(shí)候選的是24位,你會(huì)發(fā)現(xiàn)最后你的alpha通道不見(jiàn)了?吹竭@里你應(yīng)該明白原因了。
說(shuō)了這么多,大家應(yīng)該已經(jīng)開(kāi)始熟悉位深度相關(guān)的概念了。回到我們最開(kāi)始的概念上。所謂低動(dòng)態(tài)范圍圖片LDR,一般是指數(shù)值以整型(integer)類(lèi)型來(lái)儲(chǔ)存的圖片;而HDR,則是指數(shù)值以浮點(diǎn)(float)類(lèi)型來(lái)儲(chǔ)存的圖片。整型和浮點(diǎn)是編程里的術(shù)語(yǔ),用人的語(yǔ)言來(lái)說(shuō),就是整數(shù)和小數(shù)。比如說(shuō),我們傳統(tǒng)的jpg圖片,色階只能是整數(shù)0到255,不能是小數(shù),你沒(méi)見(jiàn)過(guò)哪個(gè)色階是1.5,2.8什么的吧。但是我們的HDR圖片,因?yàn)樽陨愍?dú)特的編碼方式,卻可以用小數(shù)來(lái)表達(dá)色階;更重要的是,HDR的圖片,儲(chǔ)存的色階信息可以超出屏幕亮度范圍之外,亮的地方可以比純白還亮,黑的地方可以比純黑還黑。
而這些超出顯示范圍之外的數(shù)據(jù),甚至不能被直接觀(guān)察到!那么我們要這些數(shù)據(jù)有什么用呢?HDR圖片主要會(huì)被攝影和CG兩個(gè)領(lǐng)域所使用,主要利用的點(diǎn)也正是它本身的動(dòng)態(tài)范圍夠大。我們傳統(tǒng)拍照的時(shí)候,你如果直接去拍天空,那么太陽(yáng)以及其附近的范圍,因?yàn)榱炼忍,所以?huì)得到?jīng)]有細(xì)節(jié)的純白的一片,就是我們俗話(huà)說(shuō)的曝掉了。但是如果你使用HDR的手法去拍攝天空太陽(yáng),雖然直觀(guān)的效果也是純白的一片,但是在后期軟件中,我們可以通過(guò)調(diào)整曝光,讓隱藏在純白色一片里面的亮度信息逐步顯現(xiàn)出來(lái)。如前文所說(shuō),HDR圖片可以?xún)?chǔ)存范圍極廣的信息,有很多信息在你的屏幕上不能直接觀(guān)察到,你只能通過(guò)調(diào)整曝光來(lái)觀(guān)察。
雖然你不能直接觀(guān)察藏起來(lái)的信息,但是這些信息是一直存在圖片中的,你不知道電腦知道。它們可以正確讀取圖片上特別亮和特別暗的區(qū)域的信息,在我們的CG領(lǐng)域里,我們就可以使用這些信息對(duì)場(chǎng)景進(jìn)行照明。
這一部分參考視頻教學(xué)會(huì)得到最直觀(guān)的感受。
那么HDR貼圖為什么可以?xún)?chǔ)存這么大量的信息呢?這是跟我們HDR貼圖儲(chǔ)存信息的方式有關(guān)的。我們這里主要講講最常用的HDR格式和exr格式。
HDR格式是使用RGBE四個(gè)8位通道,一共32位通道來(lái)儲(chǔ)存信息。前面的RGB大家都知道是干嘛的了,那最后的E呢?這個(gè)通道指的是exponent,曝光通道,你可以把前面的RGB理解成某個(gè)像素的顏色,而這個(gè)E通道,可以理解成這個(gè)像素的亮度。他們的計(jì)算公式也很簡(jiǎn)單,如下圖:
因?yàn)镋有8位,所以取值范圍也是0到255;當(dāng)E為128時(shí),2的0次方為1,RGB值保持初始。當(dāng)E大于128時(shí),沒(méi)大個(gè)1,RGB的亮度就會(huì)比之前亮一倍,指數(shù)上升。比如說(shuō),我們使用(100,100,130,150)的參數(shù),得到的正真RGB值其實(shí)是:
你想象一下,在我們的電腦上,255就已經(jīng)是純白的了,這三個(gè)數(shù)字所代表的亮度是有多大!
而如果E小于128,則相當(dāng)于是用原先的RGB值除以2的倍數(shù),會(huì)得到一些小數(shù),就是我們之前說(shuō)的浮點(diǎn)數(shù),這樣就會(huì)在暗部得到很多8位圖片不具備的中間過(guò)渡信息。同樣,假如我們使用115作為我們的exponent,即E通道的值,那么結(jié)果就是:
可以想見(jiàn),這是多么逼近于純黑的顏色,人眼根本無(wú)法察覺(jué)。而這些信息,就都老老實(shí)實(shí)地儲(chǔ)存在我們的HDR圖片中。
所以,HDR格式的圖片,是以RGBE?4個(gè)8位通道,一共32位信息儲(chǔ)存的,F(xiàn)在我要講一講我們CG行業(yè)里更流行的另外一種圖片格式openEXR(以下簡(jiǎn)稱(chēng)exr),這個(gè)在早些年被工業(yè)光魔發(fā)明并且逐漸變成行業(yè)標(biāo)桿的格式。
Exr格式的儲(chǔ)存方式是使用4*16Bit?RGBA來(lái)儲(chǔ)存數(shù)據(jù)的,即是說(shuō),它使用四個(gè)通道分別為紅綠藍(lán)和alpha,每個(gè)通道占16位儲(chǔ)存空間,每個(gè)像素占48位儲(chǔ)存空間來(lái)儲(chǔ)存數(shù)據(jù)。而這16位信息exr圖片是這樣分配的,拿出一位來(lái)表示這個(gè)數(shù)值的正負(fù);拿出10位來(lái)儲(chǔ)存RGBA的基本信息;拿出5位來(lái)表示曝光度。跟之前HDR圖片的記錄方式有些類(lèi)似。
只不過(guò),我們基本的RGBA值的精度更高,有2的10次方,1024個(gè)色階;而能表達(dá)的亮度范圍卻比較小一些,只有2的5次方,32個(gè)檔。
所以這兩種圖片格式的區(qū)別就很明確了。openEXR圖片的精度要高于HDR圖片(RGBA有1024色階);而HDR圖片的亮度范圍要高于openEXR圖片;但是最關(guān)鍵的點(diǎn)在這里,HDR圖片不能帶alpha非常不方便合成,所以攝影里用的相對(duì)多一些;而openEXR格式除了能帶alpha通道以外,還可以人工置入一些我們?nèi)S軟件里渲染出來(lái)的別的通道,非常適合CG工作者。
附一張各種HDR格式的對(duì)比。
這里要跟大家梳理一個(gè)比較容易混淆的概念。就是16位/通道/像素的圖片,即有可能是HDR的也有可能是LDR的。比如說(shuō),你在ps里打開(kāi)一些jpg圖片,然后你可以在模式里,將圖片的位深度從8位/通道/像素改成16位/通道/像素,但是這并不意味著圖片就被改成openEXR類(lèi)型,圖片并沒(méi)有因此由LDR變成HDR。
這是因?yàn)橥瑯邮?6位/通道/像素,也是有兩種儲(chǔ)存方式的。像工業(yè)光魔的儲(chǔ)存方式我們剛才介紹過(guò)了,是一種浮點(diǎn)的儲(chǔ)存方式,結(jié)果是HDR的。但是ps默認(rèn)改成16位/通道/像素,卻是整型的儲(chǔ)存方式,即是說(shuō),把黑到白的信息,分配到2的16次方,65536個(gè)色階里去了。0表示黑色,65535表示白色,而其間的一些數(shù)值表示過(guò)度的灰階。只是說(shuō),相對(duì)于8位的256個(gè)色階,我們儲(chǔ)存的信息量確實(shí)大了很多,色階和色階之間的過(guò)度也微妙了很多。但是我們的儲(chǔ)存方式依然是用整數(shù)的方式,并且,我們的最大亮度也不能超過(guò)純白。所以,使用16位/通道/像素的整型方式儲(chǔ)存數(shù)據(jù)的圖片,完全不具有HDR的效果。(16位/通道/像素整型儲(chǔ)存的圖片,主要作用于tone?mapping過(guò)程中,浮點(diǎn)數(shù)據(jù)塌陷為整型數(shù)據(jù)之后如果有調(diào)色的步驟,可以使用16位/通道/像素的整型格式作為緩沖格式,進(jìn)行調(diào)色之類(lèi)的工作,完了之后再把16位/通道/像素的信息塌陷成8位/通道/像素的一般圖片,方便在網(wǎng)上發(fā)布和在pc上瀏覽;如果要打印,可能保留16位/通道/像素的信息以及將色彩空間設(shè)置在adobeRGB會(huì)得到更理想的效果。這是關(guān)于tone?mapping的知識(shí),不是本篇教程所討論的主要內(nèi)容)
而在mental?ray的frame?buffer中,你是可以設(shè)定你的輸出類(lèi)型的。
你會(huì)發(fā)現(xiàn)你有兩種RGBA?4*16Bit,就是說(shuō)你有兩種16位/通道/像素的圖片儲(chǔ)存方式。其中half類(lèi)型就是工業(yè)光魔開(kāi)發(fā)的方式,即是HDR的類(lèi)型;而short,則是我們剛才說(shuō)的整點(diǎn)儲(chǔ)存類(lèi)型,實(shí)則是LDR類(lèi)型。
所以對(duì)于你渲染輸出的圖來(lái)說(shuō),如果你想獲得HDR圖片的收益,就要使用RGBA(Half)4*16Bit。
HDR的圖片,主要有兩種生產(chǎn)方式。一種是我們熟悉的三維軟件渲染,另一種就是用相機(jī)拍攝。而用相機(jī)拍攝的時(shí)候呢,并不像一般拍照那樣,卡擦一下就拍好了。而是要對(duì)著同樣的構(gòu)圖,卡擦卡擦拍好多張,而每張的曝光度要有所差別,最后用軟件將這些曝光度有差異的圖片合成成一張,就得到了我們的HDR了。
所以說(shuō),其實(shí)一張HDR圖片,就相當(dāng)于我們正常的n張曝光圖片的合成,就涵蓋了很觀(guān)光的亮度范圍。有一句話(huà)概括得非常好:HDR圖片相當(dāng)于一個(gè)將當(dāng)時(shí)的光照信息完全記錄下來(lái)的打包文件。
所以說(shuō),我們每次使用HDR貼圖去照明的時(shí)候,就相當(dāng)于把我們的三維場(chǎng)景放置在當(dāng)時(shí)拍攝的環(huán)境里去照明一樣。所以,有很多時(shí)候,僅僅使用一張HDR貼圖作為你場(chǎng)景的光源就已經(jīng)足夠了。
視頻教程中,我使用自己拍攝的三張照片做了一個(gè)簡(jiǎn)單的例子。因?yàn)橛布南拗,只拍了三張,HDR的作用沒(méi)完全體現(xiàn)出來(lái),但也足夠大家體會(huì)了。
關(guān)于后期景深的文章:
后期軟件中制作景深效果(基礎(chǔ)篇) 后期軟件中制作景深效果(進(jìn)階篇)關(guān)于后期運(yùn)動(dòng)模糊的博文:
詳解在后期軟件中制作運(yùn)動(dòng)模糊效果(理論篇) 詳解在后期軟件中制作運(yùn)動(dòng)模糊效果(實(shí)例篇)推薦閱讀書(shū)籍:
The?HDR?hand?book2.0?——Rocky?Nook(書(shū)中推薦的sIBL解決方案非常方便快捷,跟我第三部分講述內(nèi)容接近;他們提供了一個(gè)插件,可以快速設(shè)置場(chǎng)景,但是有一定學(xué)習(xí)成本)
精通HDR攝影?——弗里曼?(偏攝影的HDR書(shū)籍,給你另一個(gè)理解HDR的角度)
朱峰社區(qū)網(wǎng)頁(yè)版(手機(jī)掃描-分享-添加到屏幕)
朱峰社區(qū)微信公眾號(hào)(微信掃一掃-關(guān)注)
2005-2024 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號(hào)-1
2005-2024 ZhuFeng Community All Rights Reserved
VIP