真實感圖形的繪制_第1頁
真實感圖形的繪制_第2頁
真實感圖形的繪制_第3頁
真實感圖形的繪制_第4頁
真實感圖形的繪制_第5頁
已閱讀5頁,還剩102頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

真實感圖形的繪制第一頁,共一百零七頁,編輯于2023年,星期日第三確定場景中的所有可見面。(消除隱藏面算法)第四計算場景中可見面的顏色。(基于光學(xué)物理的光照模型計算)第二頁,共一百零七頁,編輯于2023年,星期日光照模型并不需要精確地考慮真實世界中光線和表面的性質(zhì),而只需要在兼顧精確程度和計算成本的要求下,追求更好的顯示效果。通常設(shè)計一個光照模型需要考慮的主要問題是照明特性、表面特性和觀察角度。

第三頁,共一百零七頁,編輯于2023年,星期日

照明特性是指可見表面被照明的情況,主要有光源的數(shù)目和性質(zhì),環(huán)境光及陰影效應(yīng)等。表面特性主要是指表面對入射光線的反射、折射或透明的不同情形,還有表面的紋理及顏色等。觀察角度是指觀察景物時觀察者相對可見表面所在的位置。不同光照模型的區(qū)別主要在于模擬的方法,實現(xiàn)的復(fù)雜程度,及取得的顯示效果等方面。第四頁,共一百零七頁,編輯于2023年,星期日

一般來說,光照模型可以分解為三個部分,即漫射照明、具體光源的照射及透射效應(yīng)。具體光源的照明產(chǎn)生的效果又分為漫反射和鏡面反射兩部分。

簡單的光照模型(局部)僅考慮光源照射在物體表面產(chǎn)生的反射光。復(fù)雜的光照模型(整體)要考慮周圍環(huán)境的光對物體表面的影響。第五頁,共一百零七頁,編輯于2023年,星期日第一節(jié)漫反射及具體

光源的照明

1.環(huán)境光在多數(shù)實際環(huán)境中,存在由于許多物體表面多次反射而產(chǎn)生的均勻的照明光線,這就是環(huán)境光線。環(huán)境光線的存在使物體得到漫射照明.

亮度計算如下:

I=Ia·κa

第六頁,共一百零七頁,編輯于2023年,星期日

其中I是可見表面的亮度,Ia是環(huán)境光線的總亮度,κa是物體表面對環(huán)境光線的反射系數(shù),它在0到1之間.2.漫反射具體光源在物體表面可以引起漫反射和鏡面反射。漫反射是指來自具體光源的能量到達(dá)表面上的某一點(diǎn)后,就均勻地向各個方向散射出去,使得觀察者從不同角度觀察時,這一點(diǎn)呈現(xiàn)的亮度是相同的。通常不光滑的粗糙表面總是呈現(xiàn)出漫反射的效果

第七頁,共一百零七頁,編輯于2023年,星期日

Lambert定律指出,漫反射的效果與表面相對于光源的取向有關(guān),即:

Id=Ip·κd·COSθ

其中Id是漫反射引起的可見表面上一點(diǎn)的亮度。Ip是點(diǎn)光源發(fā)出的入射光線引起的亮度。κd是漫反射系數(shù),它的取值在0到1之間,隨物體材料不同而不同。θ是可見表面法向N和點(diǎn)光源方向L之間的夾角,即入射角,它應(yīng)該在0°到90°之間。第八頁,共一百零七頁,編輯于2023年,星期日

為了簡化公式中余弦值的實際計算,可以假定向量N和L都已經(jīng)正規(guī)化,即已經(jīng)是長度為1的單位向量,這樣就可以使用向量的數(shù)量積或內(nèi)積。因為這時,于是得:

Id=Ip·κd·(L·N)

將環(huán)境光線和漫反射的效果結(jié)合起來,計算亮度的公式應(yīng)該寫成:

I=Ia·κa+Ip·κd

·()

第九頁,共一百零七頁,編輯于2023年,星期日

通常認(rèn)為具體光源對可見表面產(chǎn)生的照明作用,是隨著光源與表面之間距離的增加而下降的。設(shè)R是光線從光源發(fā)出到達(dá)表面再返回的距離,則

I=Ia·κa+Ip·κd

·()/R2

LN表面第十頁,共一百零七頁,編輯于2023年,星期日

對于平行投影,光源在無窮遠(yuǎn)處,故距離R成為無窮大。對于透視投影,1/R2也常常有很大的數(shù)值范圍而使效果不好。一種比較逼真的效果,可通過用r+k代替R2來獲得:

I=Ia·κa+Ip·κd

·()/(r+k)

其中r是光源到表面的距離,k是根據(jù)經(jīng)驗選取的一個常數(shù)。第十一頁,共一百零七頁,編輯于2023年,星期日3.鏡面反射與Phong模型鏡面反射是指來自具體光源的光能到達(dá)可見表面上的某一點(diǎn)后,主要沿著由射入角等于反射角所決定的方向傳播,從而使得觀察者從不同角度觀察時,這一點(diǎn)呈現(xiàn)的亮度并不相同。在任何有光澤的表面上都可以觀察到鏡面反射的效果。例如,用很亮的光照射一個紅色的蘋果,會發(fā)現(xiàn)最亮點(diǎn)不是紅色的,而是有些呈現(xiàn)白色,這是入射光線的顏色。這個最亮點(diǎn)就是有鏡面反射引起的。如果觀察者移動位置,會看到最亮點(diǎn)也隨之移動。第十二頁,共一百零七頁,編輯于2023年,星期日指向點(diǎn)光源反射方向指向觀察點(diǎn)鏡面反射

在鏡面反射的示意圖中,只有當(dāng)觀察者相對表面的方向V與反射光線的方向R之間的夾角為零時,才能看到鏡面反射引起的反射光線。對于不是非常理想的光澤表面,例如一個蘋果,反射光線引起的亮度隨著的增大而迅速下降。

第十三頁,共一百零七頁,編輯于2023年,星期日

由PhongBui-Tuong提出的光照明模型,用來近似反射光線引起的亮度隨著增大而下降的速率。n取值一般在1到2000之間,決定于反射表面的有關(guān)性質(zhì)。對于理想的反射表面,n就是無窮大。這里選用,是以經(jīng)驗觀察為基礎(chǔ)的。對實際物質(zhì)來說,被鏡面反射的入射光的數(shù)量是與入射角有關(guān)的。如果將鏡面反射光的百分?jǐn)?shù)記為,那么就可以將計算表面亮度的公式修改而得到:

第十四頁,共一百零七頁,編輯于2023年,星期日

這里可以假定反射光線的方向向量R和指向觀察點(diǎn)的向量V都已經(jīng)正規(guī)化,即已經(jīng)是長度為1的單位向量,于是可以簡單地利用向量內(nèi)積計算余弦值:。對,通常根據(jù)經(jīng)驗選取一個常數(shù)來代替,這樣公式可寫成下面更容易計算的形式:第十五頁,共一百零七頁,編輯于2023年,星期日

對于彩色表面,上述各公式也可以應(yīng)用,只需分別應(yīng)用于對各顏色分量的計算。例如,選擇通常的紅、綠、藍(lán)顏色系統(tǒng),這時上述公式中有關(guān)亮度及反射系數(shù)等,就要看做是三元向量。通過分別對各顏色分量進(jìn)行計算,就可以完成對彩色表面的亮度計算。第十六頁,共一百零七頁,編輯于2023年,星期日第十七頁,共一百零七頁,編輯于2023年,星期日第十八頁,共一百零七頁,編輯于2023年,星期日第十九頁,共一百零七頁,編輯于2023年,星期日第二十頁,共一百零七頁,編輯于2023年,星期日

4.光的衰減光在傳播的過程中,其能量會衰減。光的傳播過程分為兩個階段:從光源到物體表面的傳播及從物體表面到人眼的傳播。光的第一個傳播階段的衰減使物體表面的入射光強(qiáng)度變?nèi)酰诙€階段的衰減使人眼接受到的物體表面的反射光的強(qiáng)度變?nèi)?☆光在光源到物體表面的過程中的衰減在同一光源的照射下,距光源近的物體看起來亮,而距光源較遠(yuǎn)的物體看起來暗。第二十一頁,共一百零七頁,編輯于2023年,星期日

衰減比例為光的傳輸距離平方的倒數(shù),若以衰減函數(shù)f(d)來表示衰減的比例,則

f(d)=1/d2

其中,d為光的傳播距離。

這種變化規(guī)律對點(diǎn)光源來說是正確的,但真實的世界中物體并不是以點(diǎn)光源照射的。為了彌補(bǔ)點(diǎn)光源的不足,產(chǎn)生真實感更強(qiáng)的圖形,一個有效的衰減函數(shù)如下所示:

f(d)=min(1/(C0+C1d+C2d2),1)第二十二頁,共一百零七頁,編輯于2023年,星期日考慮f(d),得到光照明計算式☆光在物體表面到人眼過程中的衰減為模擬光在這段傳播過程中的衰減,許多系統(tǒng)采用深度暗示技術(shù)(DepthCueing)。深度暗示技術(shù)最初用于線框圖形的顯示,使距視點(diǎn)遠(yuǎn)的比近的點(diǎn)暗一些。第二十三頁,共一百零七頁,編輯于2023年,星期日

首先,在投影坐標(biāo)系(為方便起見,記為xyz,)中定義兩個平面Z=Zf,Z=Zb,分別為前參考面與后參考面,并賦予比例因子Sf和Sb(Sf,Sb∈[0,1])。給定物體上一點(diǎn)的深度值Z0,該點(diǎn)對應(yīng)的比例因子S0這樣來確定:當(dāng)Z0>Zf時(Z0較Zf更近),取S0=Sf

當(dāng)Z0<Zb時(Z0較Zf更遠(yuǎn)),取S0=Sb

當(dāng)Z0在[Zb,Zf]時,S0按下式計算第二十四頁,共一百零七頁,編輯于2023年,星期日

S0=Sb+(Z0-Zb)

原亮度I(由光照明模型計算出來的值)按比例S0與亮度Idc混合,目的是獲得最終用于顯示的亮度Iˊ,Idc由用戶指定,Iˊ=S0·I+(1-S0)·Idc

特別地,若取Sf=1,Sb=0,Idc=0,則當(dāng)物體位于前參考面之前(Z0>Zf)時,Iˊ=I,即亮度沒有被衰減。第二十五頁,共一百零七頁,編輯于2023年,星期日

當(dāng)物體位于后裁剪面之后(Z0〈Zb)時,Iˊ=Idc=0,即亮度被衰減為0。而當(dāng)Z0∈[Zb,Zf]時,Iˊ=S0I,亮度被部分衰減。由此可以產(chǎn)生真實效果較好的圖形。第二十六頁,共一百零七頁,編輯于2023年,星期日第二節(jié)多邊形網(wǎng)的明暗處理

多邊形網(wǎng)方法是指用若干多邊形表面去擬合任意形狀復(fù)雜形體的方法。對用多邊形網(wǎng)方法表現(xiàn)的任意形體,形成明暗有三種基本的方法,即常數(shù)明暗法(均勻著色法)、亮度插值明暗法(Gouraud著色方法)及法向量插值明暗法(Phong著色方法)。第二十七頁,共一百零七頁,編輯于2023年,星期日1.常數(shù)明暗法常數(shù)明暗法又稱均勻著色法,就是對每個多邊形表面,整個地用一個亮度值(或顏色值)。應(yīng)用這種方法,應(yīng)該有以下假設(shè)成立:(1)光源在無窮遠(yuǎn)處。多邊形表面上的任意點(diǎn)的N·L是常數(shù)。(2)觀察者在無窮遠(yuǎn)處。多邊形表面上的任意點(diǎn)的R·V也是常數(shù)。(3)該多邊形表面代替了被模擬的真實表面,而并不是對一個曲面的近似。第二十八頁,共一百零七頁,編輯于2023年,星期日

最后那個假設(shè)常常會產(chǎn)生較大誤差。這時用來逼近曲面的各多邊形表面可能會被分辨出來。由于每個小面與其相鄰的小面在亮度上常有差別,所以在顯示圖形時就能看到這種差別,這種差別由于Mach帶效應(yīng)而得到加強(qiáng)。Mach帶效應(yīng)指的是當(dāng)亮度發(fā)生不連續(xù)的突然變化時,看上去會有一種邊緣增強(qiáng)的感覺。視覺上會感到邊緣的亮側(cè)更亮,暗側(cè)更暗。Mach帶效應(yīng)是一種由人類視覺系統(tǒng)加工處理而產(chǎn)生的一種感受現(xiàn)象。第二十九頁,共一百零七頁,編輯于2023年,星期日第三十頁,共一百零七頁,編輯于2023年,星期日第三十一頁,共一百零七頁,編輯于2023年,星期日2.Gouraud方法亮度(或顏色)插值明暗法通常被稱為Gouraud著色方法。增加逼近空間形體的多邊形表面的數(shù)目,Mach帶效應(yīng)可以隨之減弱。亮度(或顏色)插值明暗法處理過程有以下四個步驟:(1)計算各多邊形表面的法向量。(2)計算各頂點(diǎn)的法向量。這里頂點(diǎn)的法向,指共享該頂點(diǎn)的所有多邊形表面法向的平均值。第三十二頁,共一百零七頁,編輯于2023年,星期日如果有一條邊是作為邊界準(zhǔn)備顯示出來的,可以對這條邊的每個頂點(diǎn),計算兩個法向量,每個是一側(cè)各邊形表面法向量的平均值。第三十三頁,共一百零七頁,編輯于2023年,星期日計算各頂點(diǎn)的亮度。因為各頂點(diǎn)的法向已經(jīng)求得,所以已經(jīng)可以利用上節(jié)討論的計算亮度的公式進(jìn)行計算。計算各多邊形表面上任意點(diǎn)處的亮度值,實行對多邊形表面的明暗處理。做法是先利用頂點(diǎn)的亮度值,在邊上做線性插值,求得邊上的亮度值。再用之在掃描線上做線性插值,從而求得多邊形面內(nèi)任意點(diǎn)處的亮度值。第三十四頁,共一百零七頁,編輯于2023年,星期日ap第三十五頁,共一百零七頁,編輯于2023年,星期日3Phong方法法向量插值明暗法是越南人Bui-TuongPhong提出來的,通常稱為Phong氏形成明暗法。這個方法是對法向量進(jìn)行插值,而不是對亮度進(jìn)行插值。在求得各頂點(diǎn)法向后,求多邊形邊上各點(diǎn)及多邊形面內(nèi)任意點(diǎn)處法向所用的插值方法,與亮度插值明暗法中進(jìn)行插值計算的方法相同。因此這個插值也可以很好地應(yīng)用前面提到的掃描線算法。第三十六頁,共一百零七頁,編輯于2023年,星期日

求得掃描線上每點(diǎn)的法向量后,在每點(diǎn)處實際計算亮度,可以應(yīng)用任何一種光照明模型。如果應(yīng)用鏡面反射,比起亮度插值法會得到明顯的改進(jìn),因為強(qiáng)光能更加真實地得到反映。即使不應(yīng)用鏡面反射,法向插值的結(jié)果也比亮度插值的結(jié)果好。這是因為對每一點(diǎn)都使用法向量的近似值,使得可以減少M(fèi)ach帶效應(yīng)引起的問題。但另一方面,對每一點(diǎn)都要計算亮度,使得計算量大為增加.第三十七頁,共一百零七頁,編輯于2023年,星期日

繪制多邊形的步驟:

(1)

計算多邊形的單位法矢量。(2)

計算多邊形頂點(diǎn)的單位法向量。(3)

在掃描線消隱算法中,對多邊形頂點(diǎn)的法向量進(jìn)行雙線性插值,計算出多邊形內(nèi)部(掃描線上位于多邊形內(nèi)部)各點(diǎn)的法向量。雙線性插值的方法如圖所示,NA由N1,N2線性插值得到:

第三十八頁,共一百零七頁,編輯于2023年,星期日第三十九頁,共一百零七頁,編輯于2023年,星期日(4)利用光照明模型計算P點(diǎn)的顏色。

當(dāng)掃描線y遞增一個單位變?yōu)閥+1時,NA,NB的增量分別為△NA,△NB,即

當(dāng)x遞增一個單位(P點(diǎn)沿掃描右移一個單位)時,NP增量為△NP即第四十頁,共一百零七頁,編輯于2023年,星期日

Phong著色方法中,多邊形上每一點(diǎn)需要計算一次光照明模型,因而計算量遠(yuǎn)大于Gouraud著色方法。但是Phong著色方法繪制的圖形更加真實,特別體現(xiàn)在如下兩個場合(考慮要繪制一個三角形)。①

如果鏡面反射指數(shù)n較大,三角形左下角的頂點(diǎn)a(R與V的夾角)很小,而另兩個頂點(diǎn)的a很大,以光照明模型計算的結(jié)果是左下角頂點(diǎn)的亮度非常大(高光點(diǎn)),另兩個頂點(diǎn)的亮度小。若采用Gouraud方法繪制,由于它是對頂點(diǎn)的亮度進(jìn)行插值,導(dǎo)致高光區(qū)域不正常地擴(kuò)散成很大一塊區(qū)域。第四十一頁,共一百零七頁,編輯于2023年,星期日

而根據(jù)n的意義,當(dāng)n較大時,高光區(qū)域?qū)嶋H應(yīng)該較集中。采用Phong方法繪制的結(jié)果更符合實際情況。當(dāng)實際的高光區(qū)域位于三角形中間時,采用Phong方法能產(chǎn)生正確的結(jié)果,而若采用Gouraud方法,由于按照光照明模型計算出來的三個頂點(diǎn)處的亮度都較小,線性插值的結(jié)果是三角形中間不會產(chǎn)生高光區(qū)域。第四十二頁,共一百零七頁,編輯于2023年,星期日

對于隱藏面消除算法,是從觀察點(diǎn)看,確定哪些表面是可見的。而對于陰影發(fā)現(xiàn)算法,是從點(diǎn)光源“看”,確定哪些表面是可見的。從觀察點(diǎn)和從點(diǎn)光源都能看見的表面,就是可見的表面。從觀察點(diǎn)可見,而從點(diǎn)光源不可見的表面,就在陰影之中。應(yīng)當(dāng)注意,這種簡便方法不能構(gòu)造出來自分布光源的陰影。如果要把分布光源造成的陰影也考慮進(jìn)去,則必須計算陰影的本影和半影。

第三節(jié)陰影

第四十三頁,共一百零七頁,編輯于2023年,星期日第四十四頁,共一百零七頁,編輯于2023年,星期日不透明體遮住光源時,如果光源是比較大的發(fā)光體,所產(chǎn)生的影子就有兩部分,完全暗的部分叫本影,半明半暗的部分叫半影。第四十五頁,共一百零七頁,編輯于2023年,星期日

當(dāng)要顯示一個客體時,可以分別對觀察點(diǎn)及各點(diǎn)光源實施同樣的消除隱藏面的算法,分別對觀察點(diǎn)及各點(diǎn)光源確定出相應(yīng)的可見部分和不可見部分,然后把所得結(jié)果進(jìn)行整理,通過正確形成明暗而表現(xiàn)出來。

當(dāng)要對同一物體從許多不同觀察點(diǎn)進(jìn)行觀察時,對所看到的一系列情形,可以只做一次發(fā)現(xiàn)陰影的計算,因為當(dāng)點(diǎn)光源相對物體是固定時.陰影實際上和觀察點(diǎn)的位置無關(guān)。第四十六頁,共一百零七頁,編輯于2023年,星期日計算陰影還有許多其他的方法。對由多邊形表面組成的客體,是對從光源來說是完全可見或者部分可見的多邊形,都附加上另一個與之共面的多邊形,稱為細(xì)碎多邊形.計算細(xì)碎多邊形的方法,是用遮擋光線多邊形的投影,相對多邊形表面,用對多邊形進(jìn)行剪裁的算法進(jìn)行剪裁.下圖示意說明了這種情況.圖中在立方體和光源之間有一個不透明的三角形面,立方體有兩個面產(chǎn)生了陰影,在那兩個面上附加上了細(xì)碎多邊形.第四十七頁,共一百零七頁,編輯于2023年,星期日從觀察點(diǎn)看是可見的,并且被細(xì)碎多邊形覆蓋的部分,要進(jìn)行全部的明暗處理,即要同時計算漫射照明及具體光源照明等結(jié)合起來的效果.從觀察點(diǎn)看是可見的,但沒有被細(xì)碎多邊形覆蓋的部分.實際上是在陰影之中,應(yīng)該只計算漫射照明引起的效果。第四十八頁,共一百零七頁,編輯于2023年,星期日光源在無窮遠(yuǎn)處投射陰影的多邊形細(xì)碎多邊形位于立方體頂面的陰影位于多邊形前面的陰影完全位于陰影中的面,因而并不加上細(xì)碎多邊形第四十九頁,共一百零七頁,編輯于2023年,星期日第四節(jié)紋理

紋理(texture)物體的表面細(xì)節(jié)光滑表面上額外地增加圖案,當(dāng)圖案加上后,表面仍然保持光滑,這一過程基本上可用一個映射函數(shù)描述;

表面呈現(xiàn)出凸凹不平的形狀,這一過程可用一個擾動函數(shù)來描述.第五十頁,共一百零七頁,編輯于2023年,星期日

光滑表面上描繪花紋是花紋圖案在客體表面上的映射,即可以表示為由一個坐標(biāo)系至另一個坐標(biāo)系的變換.

在紋理空間的正交坐標(biāo)系(u,w)中定義一個紋理圖案,而在另一個正交坐標(biāo)系(s,t)中定義了一個表面,那么,通過一個函數(shù)變換,即一個映射函數(shù)來把花紋繪制到表面上去.

s=?(u,w)t=g(u,w)或u=h(s,t)

w=k(s,t)

第五十一頁,共一百零七頁,編輯于2023年,星期日第五十二頁,共一百零七頁,編輯于2023年,星期日

最簡單的映射,可以是一個線性函數(shù).如s=Au+B,t=Cw+D

紋理的定義可能不是由數(shù)學(xué)函數(shù)給出的,這樣的紋理包括一般繪制的圖案及照片等其它形式的圖案.這多用一個二維數(shù)組定義,數(shù)組代表一個用于光柵圖形顯示的位圖.第五十三頁,共一百零七頁,編輯于2023年,星期日

顯示紋理圖案涉及從物體空間到圖象空間,以及從紋理空間到物體空間的變換,此外還要進(jìn)行適當(dāng)?shù)囊晥D變換.

我們可以用Catmull的分割算法來實現(xiàn)紋理的顯示,在這個算法中,曲面片不斷地被分割,直至每一個子曲面片僅包含一個象素中心為止,然后,將子曲面片中心的參數(shù)值映射到紋理空間中,根據(jù)紋理空間中相交點(diǎn)處的花紋圖象值決定該像素處的光強(qiáng).第五十四頁,共一百零七頁,編輯于2023年,星期日

對于具有不同粗糙程度的物體表面紋理的實現(xiàn),可以通過對表面法向量進(jìn)行擾動,來產(chǎn)生凹凸不平的視覺效果.Blinn通過在原始表面上增加一個干擾函數(shù)T(u,v),來定義一個具有粗糙紋理效果的新表面.第五十五頁,共一百零七頁,編輯于2023年,星期日

設(shè)O(u,v)是一個表面,用(u,v)來表示該表面上的一點(diǎn).

表示此點(diǎn)的法向量

新表面上對應(yīng)點(diǎn)的位量矢量為:第五十六頁,共一百零七頁,編輯于2023年,星期日

新的表面的法向量為第五十七頁,共一百零七頁,編輯于2023年,星期日當(dāng)T(u,v)很小時,上式中的最后一項可以忽略,則有:第五十八頁,共一百零七頁,編輯于2023年,星期日或N'=N+D,D為一個干擾向量,在這里為上式后兩項的和.第五十九頁,共一百零七頁,編輯于2023年,星期日第五節(jié)整體光照明模型

局部光照明模型不考慮周圍環(huán)境對當(dāng)前景物表面的光照明影響,忽略了光能在環(huán)境景物之間的傳遞,因此很難生成表現(xiàn)自然界雜場景的高質(zhì)量真實感圖形。為了增加圖形的真實感,必須考慮環(huán)境的漫射、鏡面反射和規(guī)則透射對景物表面產(chǎn)生的整體照明效果。

第六十頁,共一百零七頁,編輯于2023年,星期日

表現(xiàn)場景整體照明效果的一個重要方面是透明現(xiàn)象的模擬。透過透明性能很好的透明體,如玻璃窗,觀察到的景物不會產(chǎn)生變形。但透過另一些透明物體,如透明球等進(jìn)行觀察時,位于其后的景物呈現(xiàn)嚴(yán)重的變形。這種變形是由于光線穿過透明介質(zhì)時發(fā)生折射而引起的,因而是一種幾何變形。有些透明物體的透明性更差,觀察者通過它們看到的只是背后景物朦朧的輪廓。第六十一頁,共一百零七頁,編輯于2023年,星期日

這種模糊變形是由于透明體表面粗糙或透明物體材料摻有雜質(zhì)以至于從某方向來的透射光宏觀上不遵從折射定律而向各個方向散射。此外,透明材料的濾光特性也影響透明性能。整體光照明模型還要模擬光在景物之間的多重反射.第六十二頁,共一百零七頁,編輯于2023年,星期日

一般來說,物體表面入射光除來自光源外,還來自四面八方不同景物表面的反射。局部光照明模型簡單地將周圍環(huán)境對景物表面光亮度的貢獻(xiàn)概括成一均勻入射的環(huán)境分量并用一常數(shù)表示,忽略了來自環(huán)境的鏡面反射光和漫射光,使圖形真實性受到影響。第六十三頁,共一百零七頁,編輯于2023年,星期日1、透射光亮度的簡單模擬

I=(1-tt)Ic+ttIt,0≤tt≤1第六十四頁,共一百零七頁,編輯于2023年,星期日

在玻璃杯的邊緣處,由于介質(zhì)的厚度增加,因而使透明度降低。這時可取下式來表現(xiàn)這種效果:tt=tmin+(tmax

–tmin)[1-(1-)]2、Whitted光照明模型

Whitted在Phong模型中增加了環(huán)境鏡面反射光亮度Is和環(huán)境規(guī)則透射光亮度It,以模擬周圍環(huán)境的光投射在景物表面上產(chǎn)生的理想鏡面反射和規(guī)則透射現(xiàn)象。

第六十五頁,共一百零七頁,編輯于2023年,星期日

Whitted模型基于下列假設(shè):景物表面向空間某方向V輻射的光亮度I由三部分組成,一是由光源直接照射引起的反射光亮度Ic,另一是沿V的規(guī)則透射方向r來的環(huán)境光Is投射在光滑表面上產(chǎn)生的鏡面反射光,最后是沿V的規(guī)則投射方向t來的環(huán)境光It通過透射在透明體表面上產(chǎn)生的規(guī)則透射光,Is和It分別表示了環(huán)境在該物體表面上的鏡面映像和透射映像第六十六頁,共一百零七頁,編輯于2023年,星期日第六十七頁,共一百零七頁,編輯于2023年,星期日Whitted模型可用以下公式求出:I=Ic+ksIs+ktIt

其中ks和kt為反射系數(shù)和透射系數(shù),它們均在0至1之間取值。

在Whitted模型中,Ic的計算可采用Phong模型,因此,求解模型的關(guān)鍵是Is和It計算。由于Is和It是來自V的鏡面反射方向r和規(guī)則透射方向t的環(huán)境光亮度,因而首先必須確定r和t。第六十八頁,共一百零七頁,編輯于2023年,星期日為此可應(yīng)用幾何光學(xué)中的反射定律和折射定律。設(shè)1是V方向空間媒質(zhì)的折射率,2是物體的折射率,那么向量r和t可由下列公式得到第六十九頁,共一百零七頁,編輯于2023年,星期日第七十頁,共一百零七頁,編輯于2023年,星期日第六節(jié)光線跟蹤光線跟蹤技術(shù)是從光線投射(raycasting)技術(shù)發(fā)展而來的。光線投射的基本原理很簡單,假設(shè)從視點(diǎn)V通過屏幕象素e向場景投射一光線交場院景中的景物于P1,P2,…,Pm點(diǎn),那么離視點(diǎn)最近的P1點(diǎn)就是畫面在象素e處的可見點(diǎn),象素e的光亮度應(yīng)由P1點(diǎn)向P1V方向輻射的光亮度決定。如果通過V點(diǎn)向屏幕上的每一象素都投射光線以求得每一投射光線與場景的第一個交點(diǎn)(可見點(diǎn)),并置相應(yīng)象素的光亮度為交點(diǎn)處的光亮度,那第我們就得到一幅完整的真實感圖形。第七十一頁,共一百零七頁,編輯于2023年,星期日第七十二頁,共一百零七頁,編輯于2023年,星期日光線投射算法只能實現(xiàn)局部光照明效果。這種方法的突出優(yōu)點(diǎn)是不必再單獨(dú)消隱,算法簡單。第七十三頁,共一百零七頁,編輯于2023年,星期日雖然光線在景物間的反射和折射可以無限進(jìn)行下去,但在計算機(jī)中不可能做無休無止的光線跟蹤,需要給出光線跟蹤的結(jié)束條件。當(dāng)被跟蹤的光線射出畫面或跟蹤深度達(dá)到給定層次時,應(yīng)停止跟蹤過程??紤]到被跟蹤光線經(jīng)多次反射和透射后會衰減(由于ks和kt的作用),也可通過判別跟蹤光線對顯示象素光亮度I的貢獻(xiàn)是否小于一閾值來動態(tài)控制跟蹤深度。設(shè)顏色灰度等級為G(通常為255),k為所取閾值,那么凡是對顯示象素光亮度I的貢獻(xiàn)小于k個灰度級,或者說其貢獻(xiàn)系數(shù)小于k/G的反射、透射光亮度都沒有必要再計算下去。第七十四頁,共一百零七頁,編輯于2023年,星期日beginfor需要計算光亮度的每一象素edobegin確定通過視點(diǎn)V和象素e的光線R;ray-tracing(R,I,1);置e的光亮度為Iendend;procedureray-tracing(R,I,A);/*R為當(dāng)前跟蹤光線,I為當(dāng)前跟蹤光線的光亮度,A為I對總光亮度的貢獻(xiàn)系數(shù)*/beginifA<k/GthenI=0第七十五頁,共一百零七頁,編輯于2023年,星期日elsebeginR與景物求交,返回可見點(diǎn)P1;計算P1點(diǎn)的局部照明光亮度Ic;若P1所在表面為光滑鏡面,確定P1的鏡面反射光線Rr;ray-tracing(Rr,Is,ksA);若P1所在表面為透明面,確定P1的規(guī)則透射光線Rt;

第七十六頁,共一百零七頁,編輯于2023年,星期日ray-tracing(Rr,It,ktA);I=Ic+ksIs+ktItEndEnd第七十七頁,共一百零七頁,編輯于2023年,星期日光線跟蹤技術(shù)存在兩個主要缺點(diǎn),即耗時多和容易引起圖形走樣.耗時多是因為它在計算每個象素光亮度時都要生成一龐大的光線樹,建立光線樹以及計算每一結(jié)點(diǎn)的光亮度要進(jìn)行大量的直線和曲面求交計算,從而引起了總計算量的快速上升.圖形走樣來源光線跟蹤算法對畫面的點(diǎn)采樣,算法只對穿過屏幕象素中心的光線進(jìn)行跟蹤,忽略了穿過象素內(nèi)其它各點(diǎn)投向眼睛的大量光線。圖形走樣使畫面不能清晰地顯示圖形細(xì)節(jié),甚至造成細(xì)節(jié)丟失,此外景物邊緣處呈現(xiàn)階梯形。

第七十八頁,共一百零七頁,編輯于2023年,星期日第七節(jié)輻射度方法

光線跟蹤方法對于非常光滑的表面比較實用,但當(dāng)表面比較粗糙時,效果并不好。尤其是無法模擬彩色滲透現(xiàn)象。所謂彩色滲透現(xiàn)象就是指環(huán)境中景物的顏色相互作用而使物體表面的顏色發(fā)生變化。這是由于光照模型沒有考慮一般物體表面之間的漫反射,以及由漫反射所產(chǎn)生的顏色滲透現(xiàn)象。為了能正確地模擬這種現(xiàn)象們,1984年,Goral等人首先提出了使用熱輻射工程中的輻射度方法來解決上述問題。第七十九頁,共一百零七頁,編輯于2023年,星期日

這一方法描述了一個封閉環(huán)境中能量交換的關(guān)系,把整個場景作為一個封閉的系統(tǒng),場景中的每一個曲面作系統(tǒng)的一個組成部分,且假設(shè)曲面均為漫反射表面。然后根據(jù)能量平衡原理計算每一個曲面上的能量,從而求出被觀察點(diǎn)的光亮度。一個曲面片的光亮度包括自發(fā)光﹑射光以及可能有的透射光。那么,表示成公式為:

第八十頁,共一百零七頁,編輯于2023年,星期日其中EAi為i個面上單位面積直接發(fā)射出的能量。Ai(i=1,…,n)為第i個小曲面的面積,BAi為第i個小曲面的單位面積輻射度,ρAi為第i個小曲面的反射率,F(xiàn)Aj-Ai為形狀因子,它定義為從第i個面出發(fā)的輻射能中,可以到達(dá)的j個面的部分。當(dāng)所有的面都是具有理想漫反射性質(zhì)時,形狀因子是純幾何量,僅與形狀、大小、位置及朝向有關(guān)。

因為第八十一頁,共一百零七頁,編輯于2023年,星期日則

把它帶入公式中,則有

上式簡記為:

第八十二頁,共一百零七頁,編輯于2023年,星期日公式實際上是含有N個未知數(shù)Bi(i=1,…,n)的N個方程組成的線性方程組。這里,Ei,ρAi及Fij被視為已知。Ei表示環(huán)境中的光源,如果所有的Ei都為0,那么,就意味著環(huán)境中沒有任何照明,這時,所有的Bi也為0;當(dāng)Ei非0時,則可能代表漫反射面光源,也可能代表直接反射某個有向光源的漫反射面,正式這些面,為封閉環(huán)境提供照明,即非0的Ei項代表了外部光源。輻射度方法的含義是:離開一個特定的面的光能等于它所發(fā)出的光和反射光能之和。當(dāng)然,反射光等于離開其它各個面的光亮度乘以形狀因子,再乘以該面的反射率。第八十三頁,共一百零七頁,編輯于2023年,星期日把輻射度公式寫成矩陣乘積的形式為:

對于平面或凸面,F(xiàn)ii=0,由于系統(tǒng)是封閉的,根據(jù)能量守恒,每一個面的形狀因子之和為單位常數(shù),即:

第八十四頁,共一百零七頁,編輯于2023年,星期日

在不存在遮擋關(guān)系的環(huán)境中,在二個微分面之間,從一個微分面元到另一個微分面元的形狀因子為:第八十五頁,共一百零七頁,編輯于2023年,星期日它表示從dAi發(fā)出的光能中,可以到達(dá)dAj的部分。那么,兩個面片之間的形狀因子為:

第八十六頁,共一百零七頁,編輯于2023年,星期日當(dāng)環(huán)境中有遮擋關(guān)系存在時,應(yīng)在上面的積分式中加入一個系數(shù)δij,它的取值為0或者1,取1時,表示第i個面的位置可以看見第j個面的相應(yīng)位置,取0時,則不可見。為了方便的計算形狀因子,我們可以采用hemicube方法.即在受光的面片中心周圍構(gòu)造一個半正方體。使受光面中心成為新坐標(biāo)系中心,面片的法向方向為z軸方向。把此半正方體分成一些網(wǎng)格,每個網(wǎng)格對應(yīng)一個形狀因子。要計算一個面片的形狀因子,則可把該面片投影到半正方體上。投影所覆蓋網(wǎng)格的小形狀因子之和,就是面片的形狀因子。

第八十七頁,共一百零七頁,編輯于2023年,星期日如果若干個面片投影到半立方體的同一個網(wǎng)格上,則可以通過比較這些面到受光面片的距離,來確定哪一個面片離受光面片更近。

現(xiàn)在來看面片的形狀因子的計算,因為其中,△Fq是第q個具有投影的小網(wǎng)格的形狀因子?,F(xiàn)在的任務(wù)是如何來求△Fq。

對于頂面上的網(wǎng)格,其小形狀因子值為:第八十八頁,共一百零七頁,編輯于2023年,星期日其中,△Aq為網(wǎng)格面積,(x,y,1)網(wǎng)格中心坐標(biāo)。這是因為:類似地,對于x方向側(cè)面上的網(wǎng)格,其小形狀因子為:

第八十九頁,共一百零七頁,編輯于2023年,星期日使用半立方體計算形狀因子Fji(i=1,N)的算法如下:

Begin

以曲面片Sj的中心面元dSj為原點(diǎn),dSj的法向量為z軸建立坐標(biāo)系和半立方體,并把所有曲面變換之該坐標(biāo)系:

將半立方體每一象素e的曲面片號置為0;

將dSj對每一曲面片Si的形狀因子Fji置為0;

for每一曲面片Sjdo

begin

將Si投影至半立方體表面,其投影區(qū)域為Si';

第九十頁,共一百零七頁,編輯于2023年,星期日forSi'覆蓋的每一象素edo

ife保存的曲面片好k≠0then

沿e所在投影方向比較曲面片Sk和Si到dSj的距離,若Si離dSj的距離近,則置e的曲面片號為i。

Else

置e的曲面片號為I;

end;

for半立方體表面上曲面片號非0的一要素edo

begin

設(shè)e的曲面片號為I;

計算dSj對象素e的小形狀因子△Fji;Fji:=Fji+△Fji

end

end第九十一頁,共一百零七頁,編輯于2023年,星期日第八節(jié)色彩模型顏色既是一種心理生理現(xiàn)象,也是一種心理物理現(xiàn)象。在心理生物學(xué)上,顏色由其色彩﹑色飽和度和明度決定。色彩即顏色的"色彩",它是某種顏色據(jù)以定義的名稱。色飽和度是單色光中摻入白光的度量。單色光的色飽和度為100%,白光加入后,其色飽和度下降。非彩色光的色飽和度為0。明度為非彩色光的光強(qiáng)值。在心理物理學(xué)上,與色彩﹑色飽和度和明度相對應(yīng)的是主波長﹑色純度和亮度。第九十二頁,共一百零七頁,編輯于2023年,星期日光是波長為400-700mu的電磁波,這些電磁波被我們視覺系統(tǒng)感知為紫﹑青﹑藍(lán)﹑綠﹑黃﹑橙﹑紅等顏色。我們可以用主波長﹑純度和亮度三元組來描述任何光譜分析的視覺效果。一﹑CIE色度圖

人類對顏色的感知是以三刺激理論為基礎(chǔ)的。三刺激理論假設(shè)人類眼睛的視網(wǎng)膜中有三種錐狀視覺細(xì)胞,分別為紅﹑綠﹑藍(lán)。因此人們把這三種顏色定義為三基色。第九十三頁,共一百零七頁,編輯于2023年,星期日1931年,國際照明委員會(簡稱CIE)規(guī)定了三種基色(X﹑Y﹑Z),適當(dāng)?shù)幕旌显诖巳纯梢?guī)定出我們眼睛所能看到的所有光感。我們對色度值寫出如下定義:

這時x+y+z=1,即獲得顏色C的亮度(x,y,z)。通過對所有可見顏色畫出x和y,我們可以畫出圖8.13的CIE色度圖。該馬蹄形區(qū)域的內(nèi)部和邊界表示所有可見的色度。第九十四頁,共一百零七頁,編輯于2023年,星期日邊界彎曲部分的每一點(diǎn),都對應(yīng)在光譜中純度為百分之百的純度的色光,圖中線上標(biāo)明的數(shù)字為該位置所對應(yīng)色光的主波長,圖中央一點(diǎn)C對應(yīng)于用來近似太陽光的標(biāo)準(zhǔn)白色光,它被定義為一種標(biāo)準(zhǔn)光源C,C點(diǎn)接近于圖中的那一點(diǎn)的位置。利用的CIE色度圖,可以把三個CIE原色混合在一起以匹配某一種顏色,從而使人們能夠?qū)嶋H測量任何一種顏色的主波長和純度。對于圖8.13(2)中的某一點(diǎn)M,可以把顏色M看作是C點(diǎn)和N點(diǎn)上純凈譜光的一種混合體。這樣,N就規(guī)定了主波長。MC長度與NC長度的比值就是M點(diǎn)的純度Q,即Q=MC/NC,M越靠近C,M含有的白光就越多,因而其純度就越低。第九十五頁,共一百零七頁,編輯于2023年,星期日

第九十六頁,共一百零七頁,編輯于2023年,星期日如果某點(diǎn)于C的連線交于底邊紫色線上,則在可見光譜中找不到此顏色相應(yīng)的主波長,這時其主波長可用其補(bǔ)色的光譜值附以后綴C表示,這一光譜值可以通過反向延伸直線與對測光譜邊界線相交而得。如圖8.13(2)中A3的主波長為500cnm.

欲得到一種光譜色的補(bǔ)色,只需從這一點(diǎn)通過C點(diǎn)作一條直線求出其與對測光譜邊界線的交點(diǎn),即可求得補(bǔ)色的波長。例如,紅橙色A1(λ=610nm)的補(bǔ)色為藍(lán)綠色A(λ=491nm)這兩種補(bǔ)色按一定比例相加得白色。第九十七頁,共一百零七頁,編輯于2023年,星期日二幾種常用的顏色模型在計算機(jī)圖形學(xué)中有兩種重要的原色混合系統(tǒng):紅﹑綠﹑藍(lán)(RGB)加色系統(tǒng)和青﹑品紅﹑黃(CMY)減色系統(tǒng)。

如圖8.14所示,這兩種系統(tǒng)中的顏色互為補(bǔ)色。青色是紅色的補(bǔ)色,品紅是綠色的補(bǔ)色,黃色是藍(lán)色的補(bǔ)色。所謂某顏色的補(bǔ)色是從白色中減去這種顏色后所得的顏色。第九十八頁,共一百零七頁,編輯于2023年,星期日彩色印刷﹑膠卷中等非發(fā)光顯示體中采用CMY減色系統(tǒng)。對于發(fā)光體如彩色CRT顯示成彩色燈光,常采用RGB加色系統(tǒng)。在RGB系統(tǒng)中,顏色是由三個分量的不同數(shù)值的組合來決定的。RGB彩色空間可以被表示成一個立方體空間,如圖8.15(1)所示。

從黑點(diǎn)到白點(diǎn)的連線,是彩色空間中灰色的分布。這個彩色空間表示了顯示器中的所有顏色。

溫馨提示

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

最新文檔

評論

0/150

提交評論