MAYA燈光反射的奧秘_第1頁
MAYA燈光反射的奧秘_第2頁
MAYA燈光反射的奧秘_第3頁
MAYA燈光反射的奧秘_第4頁
MAYA燈光反射的奧秘_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、今天我們說一下 MAYA渲染時(shí)反射的重要性,希望對(duì)大家以后的學(xué)習(xí)起到一定的作用。THE WORLD OF REFLECTIONS PART The sjecorid part Philipp Zaufel% *World of reflections1 overview.01.反射的奧秘-第二部分在第二部分中Philipp Zaufel用通俗的語言描述了 BRDF (雙向反射分布函數(shù))-一個(gè)CG 中最常用的用來描述材質(zhì)反射行為的數(shù)學(xué)模型。02.總論BRDF-雙向反射分布函數(shù),是用來描述材質(zhì)反射行為的函數(shù),是一個(gè)數(shù)學(xué)模型。這篇小教程是為藝術(shù)工作者寫的,而不程序員。有關(guān)BRDF的技術(shù)資料有很多,但

2、我的目的是想讓你們了解如何讓它正確的工作,而不是大篇幅的羅列。BRDF在CG中無處不在。當(dāng)你使用Phong,Blinn或者其它Shader的時(shí)候你就在使用 BRDF模型。要是你用光線跟蹤制作反射, 陰影或者產(chǎn)生 GI效果的時(shí)候,你也在無形中使用著BRDF模型。一個(gè)BRDF模型描述了一種表面上入射和反射光線的關(guān)系。因此說簡(jiǎn)單點(diǎn)就是光線射到 表面上,表面對(duì)光線產(chǎn)生作用。光線可以被反射(鏡面的或漫射的),吸收,或兩者都有。我們可以通過測(cè)量一種真實(shí)物體表面上的反射和入射光線來描述這種材質(zhì)和它形成的 BRDF,測(cè)量的結(jié)果可以用在 CG程序中來產(chǎn)生有相同表面屬性的材質(zhì)。但大多數(shù)情況下會(huì) 使用簡(jiǎn)化的,帶可調(diào)

3、節(jié)參數(shù)的模型來產(chǎn)生CG表面。這些反射模型可以是精確的,也可以是經(jīng)驗(yàn)化的。這里我們關(guān)心的是精確的分析反射模型。因?yàn)樗锩娴膮?shù)或者說方程是基于真實(shí)世界的,并且為了能使材質(zhì)疊加產(chǎn)生復(fù)雜的SHADERS,它們也使用在CGI中。像Robertson-Sandford和Beard-maxwell這些經(jīng)驗(yàn)?zāi)P停鼈冇玫氖翘摌?gòu)的參數(shù)來構(gòu)建簡(jiǎn)化的 BRDF。下面我會(huì)提到一些高級(jí)的反射模型。像BTDF,BSDF,BDF和BSSDF,這是為了澄清一個(gè)事實(shí):一個(gè) BRDF只是依據(jù)表面屬性,入射光角度(同它的參數(shù))和視角來描述 光線的反射。BTDF-雙向傳輸分布函數(shù), 描述了透明的表面屬性,過程是通過矢量計(jì)算表面的兩

4、個(gè)方向(不是同一個(gè)計(jì)算過程)BRDF和BTDF合起來就是BSDF,簡(jiǎn)稱BDF-雙向散射分布函數(shù), 描述表面上同一點(diǎn)處兩個(gè)方向的半球的函數(shù)。這些就是高級(jí)(鏡面)光線跟蹤渲染的基礎(chǔ)函數(shù)。BSSDF-雙向表面散射反射分布函數(shù),它的發(fā)明者就是發(fā)明光子貼圖的那個(gè)人, Henrik Jen sen。它描述了物體內(nèi)部的光線散射。好萊塢,概論就這么多,下面我們一一介紹 吧。03完美的漫射材質(zhì)一一Lambert這是個(gè)非常簡(jiǎn)單的模型,而且距今已有200年的歷史了。在 CG場(chǎng)景中它無處不在。 這個(gè)模型描述了一個(gè)完美的漫射表面。入射光在表面上向四周等量的散開,如果從不同的角度觀察表面的話會(huì)看到同樣的顏色(各向同性)。

5、唯一不同的是入射的角度。入射擊角為90度時(shí)表面亮,反之則暗。這種模型在生活中是很常見的,但生活中這種的完美的漫射表面非常少,這就是CG表面看不去是電腦產(chǎn)生的表面的原因。就因?yàn)樗乃俣认喈?dāng)快,而且非常普及, 因此它成為實(shí)時(shí)渲染表面 SHADER中最常見常用的一個(gè)。Gourad Sadi ng是實(shí)時(shí)渲染技術(shù)中的一員,因?yàn)樗皇腔诿肯袼赜?jì)算的,而是基于頂點(diǎn) 的計(jì)算方法,計(jì)算頂點(diǎn)色值后在各頂點(diǎn)間運(yùn)用插值算法來形成多邊形。(新一代的顯卡都支持實(shí)時(shí)像素陰影渲染,并且這些成熟的模型都成為了今天的標(biāo)準(zhǔn),但這不是今天我們討論的話韙。)這個(gè)模型大多數(shù)情況下在物理上是正確的,這意味著一些重要的物理規(guī)則被保留了。其

6、中有一個(gè)就是反射光線的能量總和一定小于入射光線的能量。另一條是對(duì)不同顏色的吸收原 則,比如說過渡色為黑色的物體吸收掉所有的入射光線,并不產(chǎn)生反射(過渡色一個(gè)Lambert模型引申出的重要參數(shù))。04.Lambert 的例子上圖中的個(gè)球體都被賦予了 Lambert材質(zhì)。第1,2個(gè)是同一個(gè)球休的不同視角。圖中紅 圈表示球上的同一個(gè)點(diǎn)??梢钥吹絃ambert材質(zhì)在不同的視角產(chǎn)生相同的顏色。第3,4個(gè)球體是同一個(gè)模型。它們反射的光線較前兩個(gè)少,第三個(gè)是BRDF的典型模型一一環(huán)境色(ambient)。它只是在整個(gè)圖像中增加了另一種顏色來模擬環(huán)境的光照,但這種方法沒什么大用,因?yàn)樗粫?huì)讓你的圖像變的不真實(shí)

7、。要模擬環(huán)境光的話試著多打幾個(gè)燈或者干脆用GI。05簡(jiǎn)易的鏡面反射模型Pho ng,Bli nn-Pho ng.上面的圖顯示的是物理上真實(shí)的境面反射-高光。左邊一個(gè)是Lambert,完美的漫射。紅色的入射光線反射后被等量的向四周反射。第二個(gè)是完美的鏡面反射,渲染器用這個(gè)原理來產(chǎn)生完美的鏡面,像鏡子等。第三個(gè)是反射模糊,反射光線由于表面的微小凹突在鏡面反射 的路線上產(chǎn)生了偏移?,F(xiàn)在我們已經(jīng)了解了許多描述表面上不同部分的模型,上面介紹的只是最簡(jiǎn)單的幾個(gè)。還有一些描述不同類型鏡面反射的模型(因?yàn)樵S多表面都有不規(guī)則的地 方)。最簡(jiǎn)單的幾個(gè):1975年P(guān)ho ng Bui T ong發(fā)明的Pho ng模

8、型,由于它的速度相當(dāng)快,成為了 CG表面鏡面 反射應(yīng)用最多最廣泛的模型。它不是物理上精確的模型,你可以設(shè)置高光的強(qiáng)度使發(fā)送的光 線大于接收的光線,而這在現(xiàn)實(shí)中是不可能的。但因?yàn)镃GI是一種藝術(shù)創(chuàng)作,那么這也是可行的。下圖中最左側(cè)的球體是Phong模型,這種模型的一大優(yōu)點(diǎn)是你可以跟其它的模型混合使用來達(dá)到不同的效果。最常見的就是把pho ng跟Lambert混合產(chǎn)生第二個(gè)球體的效果。注意我用了相同的燈光照亮球體(位置,強(qiáng)度)。混合后的結(jié)果是高光變亮了。這樣做的優(yōu)點(diǎn)是你可以調(diào)整模型中的不同參數(shù)(顏色,高光強(qiáng)度.)來達(dá)到真實(shí)的效果。 右面的兩張圖顯示了 Pho ng的高光在入射角上和視角上都是獨(dú)立的

9、。這個(gè)三維圖中的白色線框代表了藍(lán)色垂 直入射光線在紅色板處反射的反射光線的方向和強(qiáng)度大小。入射點(diǎn)周圍的半球是完美的Lambert漫射,而由于Pho ng高光的存在在頂部有一小部分的突起。實(shí)質(zhì)上Pho ng高光就是在入射光方向上產(chǎn)生了較強(qiáng)的反射,加上入射點(diǎn)周圍的高光區(qū),再加上Lambert的漫射區(qū)形成了整個(gè)球體。當(dāng)光線從另一個(gè)角度入射時(shí)只是反射角度依據(jù)入射角=反射角定理變化。Bli nn-Pho ng模型,也叫Bli nn,是Pho ng模型最常見的變化類型。做為CG領(lǐng)域的先驅(qū),Bli nn改進(jìn)了 Pho ng模型的一些高光上的問題。Bli nn模型混合了 Lambert的漫射部分和標(biāo)準(zhǔn)的高光,

10、在速度上相當(dāng)快,因此成為許多CG軟件中的默認(rèn)材質(zhì)。此外它也集成在了大多數(shù)圖形芯片中,用以產(chǎn)生實(shí)時(shí)快速的渲染。如下圖:這兩個(gè)球體使用相同的光照和相同的參數(shù) (Bli nn和Pho ng高光的基本參數(shù)是相同的 )。看上去上圖中的 Pho ng球和下圖中的 Bli nn球沒 什么區(qū)別,除了 Blinn球看上去更加柔和。但我們來看看不同角度下的反射值(圖3,4),就能看到非常明顯的區(qū)別。 在入射角為90度的情況下反射就像是非常柔和的的Pho ng高光,但角度很小時(shí)高光的反射處明顯被撕裂。這是因?yàn)檫@兩個(gè)的BRDF模型的算法有微小的區(qū)別,但這有什么用呢?下圖說明了 Phong和Blinn視覺上的不同。在入

11、射角很小的情況下有個(gè)主要的區(qū)別。因此 我為球體打了兩個(gè)燈,一個(gè)從頂部,一個(gè)從底部,都與攝像機(jī)成90度角。第一個(gè)是 Phong球,第二個(gè)是相同條件下的Bli nn球。結(jié)果是由于球體上三角面的角度不同Pho ng的高光被扭曲了,但Blinn球保證了高光的完整性。好了,你可以根據(jù)你自己的需要選擇Phong還是Bli nn,我個(gè)人認(rèn)為Pho ng高光更正確一些,但 Bli nn高光的可控性更好。因?yàn)樗深A(yù)測(cè),特別是在復(fù)雜的表面上,因此它被用做CG軟件中最基本,也最快的BRDF模型。圖中第3,4個(gè)球使用了光線跟蹤的鏡面反射,反射出了一個(gè)環(huán)境,同樣是第一個(gè)用Pho ng,第二個(gè)用Blinn的BRDF模型。

12、注意,許多渲染程序并不支持鏡面反射渲染的BRDF模型,而是使用自己的聚焦算法。你們可以看到 Pho ng上相同的扭曲效果和 Bli nn球上清晰柔和的反射(渲染條件完全相同, 唯一不同的是不同的渲染結(jié)果)。06.背部反射:Minnaert,Hapkel/Lommel-Seelinger到此我們已經(jīng)了解了最基本的均勻漫射和高光反射部分的反射模型,但是Phong和Blinn只適用于遵守入射角=反射角原理的鏡面反射?,F(xiàn)實(shí)中的表面都會(huì)有各種各樣的缺陷,因此 光線會(huì)以不同的方式散射-SSS特效或稱背部散射。明顯,背部散射就是表面在其背面反射光線。為達(dá)到這種效果出現(xiàn)了許多不同的模型,同時(shí)還與其它的模型混合

13、來達(dá)到更加復(fù)雜的效果。最常見的一個(gè)是Minnaert模型。它使用與Lambert相同的算法,只是增加了一個(gè)使表面變暗的參數(shù)來降低正常反射方向上的亮度。下 圖中的第一個(gè)球就是Minnaert模型。它最初是用來描述月亮的BRDF的(基本Lambert反射加一點(diǎn)背部反射,世間少有)。Minnaert模型不允許有過大的背部散射值和邊緣光照效果。但由于它是基于 Lambert漫射的因此它的速度相當(dāng)快。 而Hapkel/Lommel-seelinger模型就有 一點(diǎn)復(fù)雜了,但是你也可以改變背部和前部的散射量來產(chǎn)生更多的光線散射效果。這些模型很廣泛的應(yīng)用在表面上有微小毛發(fā)的材質(zhì)和天鵝絨材質(zhì),這些材質(zhì)會(huì)在其毛

14、發(fā)的頂部產(chǎn)生邊緣背部散射光線。第三個(gè)球體是Hapke/Lommel-Seel in ger的一個(gè)變種,主要用來模擬帶有絨 毛的纖維。我在其背部打了一個(gè)藍(lán)色的燈, 以區(qū)別白色的過渡色。 注意這些模型都加上了一 些其它的參數(shù),因?yàn)楹苌儆袖秩酒髂苤С譀]有更改過的純模型。07.基于 Lambert 三角面的高級(jí)粗糙表面:Torrance,Sparrow,Cook,Blinn,Oren-Nayar建立一個(gè)描述粗糙表面的數(shù)學(xué)模型的想法很早就有了。Torranee和Sparrow1967年設(shè)計(jì)出了一個(gè)以表面作為基準(zhǔn)面的BRDF(早于Pho ng)?;嫔戏植加性S多微小的三角面,用它們之間形成的角度來描述表面

15、的粗糙程度。由于相鄰三角面間形成的槽之間的角度正好相反, 因此也叫它為 V形槽。這個(gè)模型在物理上是正確的,因?yàn)樗褂玫氖钦鎸?shí)世界的參數(shù)來描 述反射的分布,而且它具有波長(zhǎng)獨(dú)立性,意思就是說表面上的某一點(diǎn)因視角的不同而有不同的顏色。以后的幾種模型都是基于這個(gè)基本模型而建立的。之后Cook和Torranee在1982年邁出了重要的一步(有時(shí)稱為Cook-Torranee模型,有時(shí) 也稱為Blinn-Cook-Torranee模型,因?yàn)樗舶?Blinn模型考慮進(jìn)去了)。它是一種由Blinn和 Torranee-Sparrow混合而成的模型,也是物理上精確的并而渲染速度上有所改進(jìn),其中之一 是集成了更

16、多的三角面分布函數(shù)。Torra nce-Sparrow,基于著名的高斯分布;內(nèi)建基于Pho ng式分布的 Cook-Torranee ; Trowbridge-Reitz和Beekmann分布。不過這只是一小部分,重要 的是集成了關(guān)于光線的計(jì)算信息,光線照射在三角面上,依據(jù)兩個(gè)參數(shù)來反射。一個(gè)是著名的菲涅耳效應(yīng)(簡(jiǎn)單的說就是反射量依據(jù)反射角和表面折射率-參見第一部分)。第二是基于自身的陰影投射和三角面遮罩的幾何衰減因子,如下圖。Cook-Torranee這種常見模型主要是建立高光和模擬金屬質(zhì)感。有時(shí)也會(huì)混合Lambert的漫射部分,但由于它在物理上的正確性它不適用于藝術(shù)表現(xiàn),而且它的速度也不是

17、最快的一個(gè)。下圖的第一個(gè)球體是 Cook-Torranee高光,在表面粗糙度很小的情況下它跟Blinn高光的形態(tài)很相似。另一個(gè)常見的三角面模型是Oren-Nayar模型(實(shí)際上我們常用三角面模型是出于它的快速, 而且它是Lambert漫射之外一個(gè)很好的選擇)。它是Cook-Torranee模型的 一個(gè)簡(jiǎn)易版,能建立漫射表和Blinn高光。我見過很多Oren-Nayar模型不同的應(yīng)用方法,所 以我很難解釋它。這中間很多不使用遮罩和自身陰影投射,也不把波長(zhǎng)計(jì)算算在其中。大多數(shù)情況下這個(gè)模型看起來像Lambert漫射加上視線正對(duì)處的暗淡 ,再加上一些背部散射。下圖中的2,3號(hào)球是oren-Nayar

18、模型的簡(jiǎn)單渲染,畫圈的部位是同一點(diǎn)的不同視角,說明了 反射值依據(jù)視角的不同而不同。我很喜歡這個(gè)模型,因?yàn)樗萀ambert更具真實(shí)性。下圖中的1號(hào)球是另一種Oren-Nayar模型的應(yīng)用。它看上去更像沒有暗淡的lambert和背部散射的混合。不要問我它的算法是什么,它只是千萬種經(jīng)典模型中的一個(gè)變種。2號(hào)球體是復(fù)雜表面上的 Oren Nayar漫射,帶有尖銳的 Blinn高光。3號(hào)球體使用相同的設(shè)置,只是 漫射部分是Lambert,高光是Pho ng。08.各向異性和序亂的模型:Ward, He, Schlick, Lewis, Lafortune 等在上世紀(jì)90年代出現(xiàn)了大量的模型,而且有很多

19、模型發(fā)展到了現(xiàn)在。這之中最流行的是 He-Torrance-Sillion-Greenberg模型(1991-非常復(fù)雜,引入 SSS特效,有著新型漫射部分叫 直接漫射,基于物理真實(shí)和三角面),Schilick模型(1994-類似遮罩的三角面,漫射和高光部分一起計(jì)算,支持各向異性的新算法),Ward模型(1992-帶有高斯分布的快速各向異性模型,物理上正確),Lewis模型(1993-也叫著名的經(jīng)典cosine-lobe模型,物理上正確的Pho ng分布的擴(kuò)展)和lafortu ne模型(1997-由于它是 Lewis模型的普及,也叫普通版的 cosine-lobe模型)。在一些3D軟件中你可以

20、看到它們的應(yīng)用,但軟件中不是用的它們的真 名,因?yàn)檐浖某绦騿T只是用這些模型來達(dá)到他們特定的需求。這也是許多不同的模型存在的原因。舉例來說,如果你安裝了 3ds max的第三方渲染插件和材質(zhì)包,以及一些帶有 BRDF模型的插件(像HairFX,MooDee shaders,Facialstudio),你會(huì)看到有20-30種不同的模型供你 選擇。再讓我們來看看名向異性吧。到現(xiàn)在為止我們只介紹了各向同性模型,就是說反射值不隨模型的旋轉(zhuǎn)而發(fā)生變化。同樣基本的三角面模型也是各向同性的,因?yàn)槿敲娴某叽缫粯樱以诒砻嫔暇鶆蚍植?。如果反射值隨攝像機(jī)的角度旋轉(zhuǎn)而不同也不能說明是各向異性的 模型,就像我在第一

21、部分里講到的那樣,各向異性是你在某一方向觀察時(shí)表面上的凹凸和刮痕表現(xiàn)出同一性。來看看圖片吧。球1的高光是 Ward模型。很像Blinn是嗎,但我認(rèn)為這個(gè)看上去要好點(diǎn),因?yàn)楦咚狗植?使得高光處有更多的細(xì)節(jié),不像Blinn那么柔和。這個(gè)球只是有高光,但是當(dāng)你使用物理上正確的鏡面反射光線跟蹤時(shí)你就明白我在說什么了。球2就是Ward模型的光線跟蹤反射,球3是同樣條件下的Blinn模型。球2我使用了各向異性的參數(shù),還做了一段動(dòng)畫來看這個(gè) 效果。有趣的是我也可以把Blinn模型弄成各向異性,這就是我所說的序亂的模型。你可以看到,Blinn模型上的各向異性有點(diǎn)問題,Blinn反射像平常那樣柔和,但左下的那道

22、細(xì)長(zhǎng)高光表現(xiàn)的非常尖銳,這不像我想像中的那樣。第三個(gè)球體是另個(gè)一種有趣的各向異性模型, 它是finalshaders的distant fur,是3ds max的渲染插件finalrender stage-1的材質(zhì)插件。它可 以做為高級(jí)BRDF模型的很好的例子,它含有許多不同的基本BRDF模型和一些擴(kuò)展的功能,能方便的使用戶創(chuàng)建他們想要的效果。下圖中的1號(hào)球是在絨絨的粗糙球體上使用了柔和的不均等色和Lambert漫射。在做成動(dòng)畫的時(shí)候不均等色也會(huì)使球體看上去模糊,像長(zhǎng)絨毛一樣。2號(hào)球使用非常尖銳的各向異性高光來模擬油油的表面。第3個(gè)球使用了自定義曲線來控制一個(gè)強(qiáng)大模型的光線反射分布。很遺憾這個(gè)類

23、型的模型沒有在大多數(shù)渲染器里得到支持,這種類型的著名模型有FALLOFF貼圖和Zauner模型。我希望在渲染程序里能夠很好的整合鏡面反射衰減和各向異性分布的 自定義曲線。4號(hào)球使用Zauner模型來產(chǎn)生模擬的 SSS效果。看來我們已經(jīng)接觸到了SSS,好吧我們開始下一個(gè)話題吧。09.高級(jí)渲染技巧和 SSS 模型:Kubelka-Mu nk,Ha nraha n-Krueger,Je nsen首先,Kubelka-Munk和Hanrahan-Krueger模型跟高級(jí)渲染沒什么關(guān)系。它們跟上面講的模型一樣,跟表面和攝像機(jī)有關(guān),這兩個(gè)又跟SSS特效有關(guān)。實(shí)際上它們是跟SSS特效最有關(guān)的模型,除了 He模型之外。但它們只是處理表面的漫射部分,就是說它們不能真的計(jì) 算表面下面的光線來達(dá)到實(shí)現(xiàn)真實(shí)物理屬性的目的。這種技術(shù)需要新的渲染技術(shù),像高級(jí)光線跟蹤算法(MONTE CARLO )和光子貼圖技術(shù)的支持。Kubelka-Munk模型是一個(gè)非常簡(jiǎn)單的用來描述表面上色素層的BRDF。它先考慮一層色素,下一步

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論