張德發(fā)
摘要:高級(jí)照明技術(shù)是3DS MAX中提供的渲染功能,能夠通過(guò)計(jì)算場(chǎng)物體彼此照明的相互影響來(lái)創(chuàng)建更為真實(shí)的照明環(huán)境。高級(jí)照明技術(shù)包含了光線跟蹤(raytrace)和光能傳遞(radiosity)兩種照明算法。光跟蹤器能為明亮場(chǎng)景提供邊緣柔和的陰影和顏色滲出,它通常用于模擬環(huán)境日光的天光對(duì)象。光能傳遞計(jì)算場(chǎng)景中所有曲面的強(qiáng)度,比光跟蹤器更精確。文章主要討論3DS MAX中光跟蹤器和光能傳遞的基本工作原理、使用方法及經(jīng)驗(yàn)。
關(guān)鍵詞:光跟蹤器;光能傳遞;高級(jí)照明;全局照明
0引言
3DS MAX中提供了兩種照明技術(shù):全局照明(GlobalIllumination)技術(shù)和局部照明(Local Illumination)技術(shù)。局部照明技術(shù)是一種非完全照明方法,它只考慮從光源照射出來(lái)的光線及單獨(dú)曲面對(duì)光的反射或透射。全局照明考慮的是光在物體表面間相互傳遞產(chǎn)生的間接照明效果,如光照射到物體表面后,有些光線反射到其它對(duì)象(含自身)表面上,有些光線被表面吸收(使對(duì)象呈現(xiàn)不現(xiàn)色彩和質(zhì)地),有些光線則透過(guò)表面而照射到其它對(duì)象表面等。全局對(duì)象比局部照明算法要復(fù)雜得多。在3DS MAX中使用兩種全局照明技術(shù):光跟蹤器和光能傳遞。
1光跟蹤器
我們知道,自然界中物體能在人腦中形成圖像,是人的眼睛接受物體表面反射的光子(直接反射或表面多次反射的光子)后形成的。計(jì)算機(jī)中用攝像機(jī)來(lái)模擬人的眼睛,屏幕上的像素表示人眼的感光系統(tǒng)。光跟蹤器的工作過(guò)程為,先從攝像出發(fā),通過(guò)監(jiān)視器上的像素,做一條射線,直到它與一個(gè)曲面相交(即光子遇見對(duì)象表面),根據(jù)對(duì)象材質(zhì)決定該點(diǎn)的亮度(亮度計(jì)算要反向追蹤一次)、顏色等,這就完成了一次光跟蹤,如果相交的曲面有光澤的或透明,這時(shí)光跟蹤器會(huì)在反射或透射方向上再執(zhí)行光跟蹤,如果光線遇到的另外曲面仍有光澤的或透明,則重復(fù)光跟蹤過(guò)程。光跟蹤器算法實(shí)際上是一種對(duì)光線采樣的過(guò)程。這種照明算法,對(duì)光線照不到的對(duì)象不會(huì)計(jì)算,因而存在不足。
光跟蹤算法的應(yīng)用非常廣泛,因?yàn)樗梢越⒍喾N照明效果的模型,可以精確地實(shí)現(xiàn)直接照明的全局照明特性、陰影、鏡面反射(比如鏡子)以及通過(guò)透明材質(zhì)的折射。光跟蹤的主要不足在于即使對(duì)中等復(fù)雜的環(huán)境它也可能處理得非常慢。在3Ds max中,光跟蹤有選擇的用于使用光跟蹤材質(zhì)的對(duì)象上,這些材質(zhì)將光跟蹤指定為其著色選項(xiàng)。光跟蹤也可以指定為渲染光源投射陰影的方法。
2光能傳遞
光能傳遞是解決場(chǎng)景照明的另一種算法,是一種與視點(diǎn)無(wú)關(guān)(view-independent)的全局照明(global illumination)算法,它模擬場(chǎng)景中漫反射表面間的光能傳遞過(guò)程。假定所有到達(dá)物體表面(surface)的光線都會(huì)被反射回場(chǎng)景中,場(chǎng)景中所有可見的物體都能發(fā)出光線或反射光線,光能在場(chǎng)景的表面間可以互相傳遞。光能傳遞算法的原理是,將場(chǎng)景細(xì)分成大量的小多邊形,從未射出光能最大的一個(gè)小多邊形開始,把它射出的光能加到其它所有的小多邊形上,之后把未射出光能的小多邊形中光能次大的小多邊形射出的光能加到其它所有的小多邊形上,反復(fù)執(zhí)行這一過(guò)程,直到達(dá)到指定的精度,光能傳遞的最終值就記錄在各小多邊形中。
物體表面間光的能量傳遞遵循以下光能傳遞方程:
Bi=Ei+Pi∑BjFji其中:Bi表示表面i的輻射度,Bj表示表面j的輻射度;
Ei表示表面i的發(fā)射率,Pi表示表面i的反射率;
Fji表示表面j相對(duì)于表面i的形狀因子。
現(xiàn)在光能傳遞技術(shù)都是建立在Stochastic Relaxation ren-dering(簡(jiǎn)稱為SRR)技術(shù)基礎(chǔ)上的,常用的有progressive ra-diosity和wavelet radiosity。
光線跟蹤和光能傳遞算法優(yōu)點(diǎn)和不足比較見表1。
3光跟蹤器與光能傳遞的使用方法
3.1光跟蹤器的使用方法
根據(jù)前述分析,由于光跟蹤器只對(duì)光線進(jìn)行追蹤采樣,因此對(duì)場(chǎng)景的要求不高,只需按常規(guī)方式建立場(chǎng)景和模型,添加標(biāo)準(zhǔn)燈光(也可加光度學(xué)燈光)。
具體步驟如下:
(1)打開“渲染”(Rendering)菜單中“高級(jí)照明”(Advanced Light)下的“光跟蹤器”(Light Tracer),打開“渲染場(chǎng)景:默認(rèn)掃描線渲染器”對(duì)話框,在“選擇高級(jí)照明”(SelectAdvanced Light)卷展欄中,選取“光跟蹤器”(Light Tracer)選項(xiàng)。
(2)設(shè)置必要的參數(shù)(其中增加“反彈”、“向下細(xì)分至”兩個(gè)選項(xiàng)的值,可大大提高渲染效果,但也會(huì)降低渲染的速度),進(jìn)行渲染測(cè)試,查看渲染情況。
(3)根據(jù)渲染情況,調(diào)整追蹤參數(shù),反復(fù)調(diào)試,直到得到滿意效果。
3.2光能傳遞的使用方法
光能傳遞由于要把場(chǎng)景分成很多小多邊形,因此場(chǎng)景中對(duì)象的尺寸就非常重要,最好按實(shí)際尺寸來(lái)建立。光能傳遞可分為人工模擬和仿真現(xiàn)實(shí)兩種。仿真現(xiàn)實(shí)是指場(chǎng)景中的燈光使用基于物理的光度學(xué)燈光(Photometric lights),自然光要使用IES Sun和IES Sky,場(chǎng)景中的材質(zhì)設(shè)置應(yīng)與現(xiàn)實(shí)中的一致。
下面僅以仿真現(xiàn)實(shí)為例說(shuō)明使用光能傳遞的具體步驟:
(1)在場(chǎng)景中設(shè)置光度學(xué)燈光,設(shè)置曝光類型并渲染場(chǎng)景,調(diào)節(jié)燈光的位置、強(qiáng)度等。
(2)打開“渲染”(Rendering)菜單中“高級(jí)照明”(Advanced Light)下的“光能傳遞”(Radiosity),打開“渲染場(chǎng)景:默認(rèn)掃描線渲染器”對(duì)話框,在“選擇高級(jí)照明”(SelectAdvanced Light)卷展欄中選擇“光能傳遞”。
(3)“光能傳遞”的調(diào)節(jié)參數(shù)較多,其中常用的有“初始質(zhì)量”、“優(yōu)化迭代次數(shù)”、“對(duì)數(shù)曝光控制”、“網(wǎng)格尺寸”、“重聚集間接照明”等參數(shù)?!爸鼐奂g接照明”用于根據(jù)全部光源計(jì)算明暗色調(diào),糾正黑斑和光線滲漏。使用這種方式能夠產(chǎn)生最好的渲染效果,但需耗費(fèi)較長(zhǎng)的渲染時(shí)間。
(4)在“光能傳遞處理參數(shù)”(Radiosity Parameters)卷展欄中,單擊“開始”(Start)按鈕,系統(tǒng)開始光能傳遞計(jì)算,當(dāng)計(jì)算完成時(shí)就能在視圖里看到計(jì)算結(jié)果。
(5)單擊“渲染”按鈕,對(duì)場(chǎng)景進(jìn)行最終渲染,根據(jù)渲染情況,調(diào)整“光能傳遞”的調(diào)節(jié)參數(shù),反復(fù)調(diào)試,直到得到滿意效果。
4結(jié)束語(yǔ)
由于光跟蹤器不考慮場(chǎng)景真實(shí)的物理數(shù)據(jù)和尺寸,對(duì)模型沒有什么要求,一般用來(lái)制作室外照明效果,而且渲染速度也較快。使用光跟蹤器照明,不適宜制作室外動(dòng)畫,因?yàn)闀?huì)使畫面產(chǎn)生閃爍。
光能傳遞比較適宜室內(nèi)照明,因?yàn)槭覂?nèi)場(chǎng)景較小,易于分解;室內(nèi)光照要細(xì)膩、清晰、真實(shí),而光能傳遞是基于物理方式的照明方法,可以真實(shí)再現(xiàn)室內(nèi)光線照明效果。