《線上線下混合式計(jì)算機(jī)圖形學(xué)基礎(chǔ)實(shí)驗(yàn)教程》課件-第10章_第1頁(yè)
《線上線下混合式計(jì)算機(jī)圖形學(xué)基礎(chǔ)實(shí)驗(yàn)教程》課件-第10章_第2頁(yè)
《線上線下混合式計(jì)算機(jī)圖形學(xué)基礎(chǔ)實(shí)驗(yàn)教程》課件-第10章_第3頁(yè)
《線上線下混合式計(jì)算機(jī)圖形學(xué)基礎(chǔ)實(shí)驗(yàn)教程》課件-第10章_第4頁(yè)
《線上線下混合式計(jì)算機(jī)圖形學(xué)基礎(chǔ)實(shí)驗(yàn)教程》課件-第10章_第5頁(yè)
已閱讀5頁(yè),還剩37頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第10章光照計(jì)算10.1實(shí)驗(yàn)內(nèi)容簡(jiǎn)述和實(shí)驗(yàn)?zāi)繕?biāo)10.2直接光照計(jì)算10.3明暗過(guò)渡計(jì)算10.4全局光照之光線跟蹤算法10.5課外拓展性實(shí)驗(yàn)

10.1實(shí)驗(yàn)內(nèi)容簡(jiǎn)述和實(shí)驗(yàn)?zāi)繕?biāo)

基本實(shí)驗(yàn)內(nèi)容包括:直接光照計(jì)算(環(huán)境光、漫反射光、鏡面反射光、Phong光照模型、Blinn-Phong光照模型)、明暗過(guò)渡計(jì)算(Flat明暗過(guò)渡、Gouraud明暗過(guò)渡、Phong明暗過(guò)渡)及全局光照之光線跟蹤算法(光線跟蹤中的求交計(jì)算、反射光線方向的計(jì)算、折射光線方向的計(jì)算)。

完成本實(shí)驗(yàn)后,讀者能夠:

(1)熟記顏色模型(布魯姆知識(shí)模型:記憶);

(2)熟記和描述環(huán)境光模型、漫反射模型和Phong模型的原理和公式(布魯姆知識(shí)模型:記憶和理解);

(3)熟記和描述環(huán)境光模型、漫反射模型和Phong模型的優(yōu)缺點(diǎn)以及適用范圍(布魯姆知識(shí)模型:記憶、理解、應(yīng)用);

(4)熟記、描述和使用Gouraud以及Phong明暗過(guò)渡(布魯姆知識(shí)模型:記憶、理解和應(yīng)用);

(5)找到模型網(wǎng)格面明暗過(guò)渡和高光效果存在的問(wèn)題,并提出改進(jìn)策略(布魯姆知識(shí)模型:應(yīng)用、分析);

(6)結(jié)合OpenGL能實(shí)現(xiàn)環(huán)境光模型、漫反射模型、Phong模型、Gouraud明暗過(guò)渡以及Phong明暗過(guò)渡(布魯姆知識(shí)模型:應(yīng)用)。

10.2直接光照計(jì)算

10.2.1環(huán)境光環(huán)境光是指光源所產(chǎn)生的光在環(huán)境中經(jīng)過(guò)多次反射,最終達(dá)到平衡時(shí)分布在環(huán)境中的一種光??山普J(rèn)為同一環(huán)境下的環(huán)境光,其光強(qiáng)分布是均勻的,計(jì)算公式如下:

(10.1)其中:Ia表示環(huán)境光的能量值;Ka表示物體表面對(duì)環(huán)境光的反射系數(shù)。

1.關(guān)鍵代碼實(shí)現(xiàn)

代碼如下:

2.案例效果

根據(jù)式(10.1)給加載的OBJ模型設(shè)置了環(huán)境光反射系數(shù),并給場(chǎng)景設(shè)置了環(huán)境光,效果如圖10-1所示。

圖10-1環(huán)境光效果圖

10.2.2漫反射光

當(dāng)光線照射到比較粗糙的物體表面時(shí),會(huì)形成漫反射。漫反射光的能量值近似服從Lambert定律,其計(jì)算公式如下:

(10.2)

其中:Ip表示入射光的能量值;Kd表示物體的表面漫反射率;L表示光源向量;N表示物體光照點(diǎn)處的法向量;L·N表示兩向量的夾角(入射角)余弦值。

定義light_rgb_diffuse_specular數(shù)組保存入射光的能量值;定義material_diffuse_rgb_reflection數(shù)組保存物體表面的漫反射系數(shù);定義costheta保存L·N的值。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

根據(jù)式(10.2)給OBJ模型設(shè)置漫反射系數(shù),并給場(chǎng)景設(shè)置了點(diǎn)光源,最終效果如圖10-2所示。

圖10-2漫反射效果圖

10.2.3鏡面反射光

光照射到相對(duì)光滑的物體表面往往會(huì)產(chǎn)生鏡面反射,其特點(diǎn)是在光滑表面會(huì)產(chǎn)生高光區(qū)域,經(jīng)驗(yàn)?zāi)P捅磉_(dá)式如下:

(10.3)

其中:Ip表示入射光的能量值;Ks表示物體表面高光反射系數(shù);R表示反射光向量;V表示視線方向的逆向量(表示光線從物體表面光照點(diǎn)進(jìn)入眼睛的方向);n表示高光指數(shù),反映物體表面的光滑程度。

與10.2.2小節(jié)的漫反射光類(lèi)似,這里依舊使用數(shù)組light_rgb_diffuse_specular來(lái)保存入射光的能量值;定義material_specular_rgb_reflection數(shù)組來(lái)保存物體表面高光反射系數(shù);定義cosalpha來(lái)保存R·V的值。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

根據(jù)式(10.3)給OBJ模型設(shè)置鏡面反射系數(shù),并給場(chǎng)景設(shè)置了點(diǎn)光源,最終效果如圖10-3所示。

圖10-3鏡面反射效果圖

10.2.4

Phong光照模型

在單一光源照射下,Phong光照模型為環(huán)境光、漫反射光和鏡面反射光之和,其表達(dá)式如下:

(10.4)

其中各參數(shù)的含義同前,此處不再贅述。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

給場(chǎng)景設(shè)置點(diǎn)光源,并使用式(10.4)給添加了環(huán)境光反射系數(shù)、漫射系數(shù)和鏡面光反射系數(shù)的OBJ模型計(jì)算直接光照,最終效果如圖10-4所示。

圖10-4

Phong光照模型效果圖

10.2.5

Blinn-Phong光照模型

根據(jù)式(10.4)可知,Phong光照模型計(jì)算鏡面光時(shí),當(dāng)R和V的夾角超過(guò)90°時(shí),它們的余弦值變?yōu)樾∮?,這和自然現(xiàn)象不符合。針對(duì)該問(wèn)題,本實(shí)驗(yàn)引入了如式(10.5)所示的Blinn-Phong光照模型。

(10.5)

式(10.5)在Phong光照模型的基礎(chǔ)上引入了向量H,即V和L的中間向量,以避免高光部分出現(xiàn)負(fù)值。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

給場(chǎng)景設(shè)置點(diǎn)光源,并使用式(10.5)給添加了環(huán)境光反射系數(shù)、漫射系數(shù)和鏡面光反射系數(shù)的OBJ模型計(jì)算直接光照,最終效果如圖10-5所示。

圖10-5

Blinn-Phong光照模型效果圖

10.3.1

Flat明暗過(guò)渡

Flat明暗過(guò)渡是一種簡(jiǎn)單的能量插值過(guò)渡方式,即用一種亮度的顏色作為整個(gè)(網(wǎng)格)面的顏色。本實(shí)驗(yàn)以頂點(diǎn)為基本單位,先利用光照模型計(jì)算出面頂點(diǎn)的能量(顏色),然后取這個(gè)面頂點(diǎn)能量的平均值作為該面囊括的所有點(diǎn)的能量。對(duì)于面內(nèi)點(diǎn)坐標(biāo)計(jì)算,采用雙線性插值的方式實(shí)現(xiàn)。

10.3明暗過(guò)渡計(jì)算

1.關(guān)鍵代碼實(shí)現(xiàn)

為了實(shí)現(xiàn)對(duì)邊的插值點(diǎn)計(jì)算,此處取p1、p2、p3表示三角形網(wǎng)格面的三個(gè)頂點(diǎn);rate是控制插值密度的變量,當(dāng)t取遍[0,1]時(shí),即實(shí)現(xiàn)對(duì)邊的離散采樣。

2.案例效果

根據(jù)上述插值方式,使用Flat明暗過(guò)渡給OBJ模型加上直接光照,最終效果如圖10-6所示。

圖10-6

Flat明暗過(guò)渡效果圖

10.3.2

Gouraud明暗過(guò)渡

Gouraud明暗過(guò)渡,通過(guò)對(duì)模型網(wǎng)格面上頂點(diǎn)的能量進(jìn)行雙線性插值實(shí)現(xiàn)模型表面顏色的明暗過(guò)渡,具體過(guò)程如下:

(1)對(duì)于網(wǎng)格面頂點(diǎn),通過(guò)讀取OBJ模型的信息來(lái)獲得頂點(diǎn)的法向信息。

(2)利用光照模型,計(jì)算該點(diǎn)的光照能量(顏色)。

(3)利用雙線性插值,插值網(wǎng)格面內(nèi)部點(diǎn)的坐標(biāo)和能量。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

根據(jù)上述插值方式,使用Gouraud明暗過(guò)渡給OBJ模型加上直接光照,最終效果如圖10-7所示。

圖10-7

Gouraud明暗過(guò)渡效果圖

10.3.3

Phong明暗過(guò)渡

Phong明暗過(guò)渡,通過(guò)對(duì)模型網(wǎng)格面上點(diǎn)的法向量進(jìn)行雙線性插值實(shí)現(xiàn)模型表面顏色的明暗過(guò)渡,具體過(guò)程如下:

(1)通過(guò)讀取OBJ模型的信息來(lái)獲得網(wǎng)格面頂點(diǎn)及其法向信息。

(2)利用雙線性插值,插值網(wǎng)格面的所有邊以及內(nèi)部點(diǎn)的坐標(biāo)和法向。

(3)采用光照模型,直接計(jì)算上述所有點(diǎn)的光照能量(顏色)。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

根據(jù)上述插值方式,使用Phong明暗過(guò)渡給OBJ模型加上直接光照,最終效果如圖10-8所示。

圖10-8

Phong明暗過(guò)渡效果圖

10.4全局光照之光線跟蹤算法

在如圖10-9所示的場(chǎng)景中,有一個(gè)視點(diǎn),兩個(gè)物體O1與O2。首先,從視點(diǎn)出發(fā)經(jīng)過(guò)投影平面上一點(diǎn)的視線,傳播到達(dá)球體O1,交點(diǎn)為P1。利用直接光照模型如式(10.4)可以得到P1點(diǎn)處的光照能量。在P1點(diǎn),這條光線產(chǎn)生了反射光線R1和折射光線T1。

圖10-9光線跟蹤過(guò)程示意圖

考慮到效率上的需要,一條光線(包括折射光線和反射光線)可以有以下幾種終止條件:

(1)該光線未碰到任何物體,即該光線碰到了背景。

(2)光線在經(jīng)過(guò)多次反射和折射后,衰減超過(guò)閾值。

(3)光線反射或者折射次數(shù),即跟蹤深度,超過(guò)閾值。

1.關(guān)鍵代碼實(shí)現(xiàn)

2.案例效果

使用Blinn-Phong光照模型對(duì)OBJ模型進(jìn)行直接光照計(jì)算,最終效果如圖10-10所示;加上光線跟蹤后,生成的最終渲染效果如圖10-11所示。

圖10-10

Blinn-Phong光照模型效果圖

圖10-11光線跟蹤效果圖

10.4.1光線跟蹤中的求交計(jì)算

由于每一條光線都需要與場(chǎng)景中的所有模型進(jìn)行求交,并找到離投影面最近的一個(gè)交點(diǎn),因此,求交計(jì)算是影響光線跟蹤效率的關(guān)鍵部分。本實(shí)驗(yàn)使用參數(shù)方程來(lái)表示每條光線,并采用優(yōu)化的線面求交方法來(lái)加速上述過(guò)程。

10.4.2反射光線方向的計(jì)算

當(dāng)光線擊中物體表面的一點(diǎn)時(shí),如果物體表面存在反射系數(shù),則需要模擬反射光線,對(duì)該光線實(shí)施跟蹤。根據(jù)相關(guān)文獻(xiàn)可知,反射光線方向=入射光向量–2×交點(diǎn)法向×(入射光向量與交點(diǎn)法向的點(diǎn)乘)。

10.4.3折射光線方向的計(jì)算

當(dāng)光線擊中物體表面的一點(diǎn)時(shí),如果物體表面存在折射系數(shù),則需要模擬折射光線,對(duì)該光線實(shí)施跟蹤。根據(jù)相關(guān)文獻(xiàn)可知,折射光線方向Refr_Dir由如下公式計(jì)算獲得:

(10.6)

其中:L為入射光向量;N為交點(diǎn)法向;ηi和ηt分別表示光線所離開(kāi)的物體反射率和所進(jìn)入的物體反射率。

10.5課外拓展性實(shí)驗(yàn)

任務(wù)1:在△ABC中,A、B、C三點(diǎn)的坐標(biāo)分別為

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論