




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、光照模型的交互式演示系統(tǒng)實現(xiàn)電子信息工程0702蔣林軒指導(dǎo)教師趙穎摘要:木論文以phong光照模型為理論基礎(chǔ),使用opengl圖形硬件接i i設(shè)計了一 個出太陽、地球、月球以及浩瀚的星空共同組成小太陽系,實現(xiàn)了以太陽為光源、 以星空為背景的光照模型演示系統(tǒng)。通過改變太陽光的顏色等屬性來表現(xiàn)光照模型 中漫反射、鏡面反射以及環(huán)境光的變化效果,并利用隨機函數(shù)來生成變幻莫測的閃 爍星空。該系統(tǒng)還通過旋轉(zhuǎn)、平移等圖形變換實現(xiàn)了太陽、地球和月亮的自轉(zhuǎn)和公 轉(zhuǎn)等動畫效果,模擬了日食及刀亮的陰晴圓缺等一系列自然現(xiàn)象。本次設(shè)計可作為 計算機圖形學(xué)教學(xué)示例和犬體運動及部分犬文現(xiàn)象產(chǎn)生原理教學(xué)示例。 關(guān)鍵詞:真實感
2、圖形學(xué),phong光照模型,人機交互,openglabstract: based on phong illumination model, a small interactive solar demo system,which includes the sun as lightsource,the earth,the moonand starry sky as background,is implemented in this thesis by using opengl graphics hardware interface.the interaction of diffuse-light,
3、specular-light,ambientlight and starry sky created by random function is able to make up many unpredictable lighting effects by changing some attributes of sunlight,such as color and brightness.some natural phenomena, such as earth's rotation and revolutionmoorvs eclipse, are also observed in th
4、is system by transforming and rotating the sun,the earth and the moorult is an excelle nt demo system as classroom dem on strati on for computer graphics or astronomy. key words:realistic graphics, pho ng illumi nation model, huma n-computer interaction, opengl1引言真實感圖形技術(shù)作為多媒體的一部分已經(jīng)深刻影響著我們現(xiàn)在和未來的生活。 在
5、一些著名的動畫電影大片中,利用真實感圖形技術(shù)創(chuàng)造出的具有立體感的和栩栩 如生的動畫人物形象,讓我們充分體會到計算機動畫高超的技術(shù)魅力。光照處理是真實感圖形技術(shù)里增強真實感最重要的手段,加有光照的物體能給 人以三維立體視覺效果。光照處理是在已知物體的物理形態(tài)和光源性質(zhì)下,基于光 學(xué)物理的相關(guān)定律,通過運算確定場景物體可見面上任何一點射向觀察者眼中的光 的強度(或rgb值),來模擬真實光照效果。目前一些光照處理方法對于某些類型的 物體表面可以得到很精確的模擬效果,如光線跟蹤法適用于高反射物體表面巾;輻 射度法21適用于所有表面都是漫反射特性的場景。雖然算法的逼真度提高了,但是 計算復(fù)雜度也大大增加
6、了,圖形生成會跟不上實時性的要求心役本文使用0pengl圖形硬件接口設(shè)計一個具有星空背景的日、地、月及星系的 交互式演示系統(tǒng),該系統(tǒng)運用真實感圖形學(xué)中的光照、貼圖、圖形變換、色彩融合 等技術(shù),實現(xiàn)了星球自轉(zhuǎn)和公轉(zhuǎn)運動、星球的運動跟蹤、閃爍星空的隨機生成以及 交互觀察等功能,模擬了日食及月亮的陰晴圓缺等一系列自然現(xiàn)象,為計算機真實 感圖形學(xué)提供了教學(xué)示例,并可以作為宇宙啟蒙教育材料。2 phong光照模型當(dāng)光照射到物體表面時,光線可能被吸收、反射和透射。被物體吸收的部分轉(zhuǎn) 化為熱。反射、透射的光進入人的視覺系統(tǒng),使我們能看見物體。為模擬這一現(xiàn)象, 我們建立一些數(shù)學(xué)模型來替代復(fù)雜的物理模型。這些模
7、型就稱為明暗效應(yīng)模型或者 光照明模型冏。phong光照明模型訓(xùn)是真實感圖形學(xué)中提岀的第一個有影響的光照 明模型,生成圖象的真實度已經(jīng)達到可以接受的程度。設(shè)光源為點光源,反射作用被細分為漫反射(diffuse reflection)和鏡面反射 (specular reflection)11,121o phong光照明模型只考慮物體對直接光照的反射作用,而 物體間的光反射作用,簡化為環(huán)境光(ambient light)來表示。2.1 漫反射(diffuse reflection)當(dāng)光源來自一個方向時,漫反射光均勻向各方向傳播,與視點無關(guān),它是由表 面的粗糙不平引起的,因而漫反射光的空間分布是均勻的
8、。記入射光強為/卩,物體 表面上點p的法向量為/v ,從點p指向光源的向量為厶,兩者間的夾角為0,由lambert 余弦定律,則漫反射光強為:id = ip kdcos(0),0w(o冷)(2.1)其中,屁是與物體有關(guān)的漫反射系數(shù),0<kd<l o當(dāng)厶、n為單位向量時,上式 也可用如下形式表達:id = ip kd(l n)(2.2)漫反射光的顏色由入射光的顏色和物體表面的顏色共同設(shè)定,在rgb顏色模型 下,漫反射系數(shù)心有三個分量kdrfkdgfkdb ,分別代表rgb三原色的漫反射系數(shù), 它們是反映物體的顏色的,通過調(diào)整它們,可以設(shè)定物體的顏色。同樣的,我們也 可以把入射光強/設(shè)
9、為三個分量irf igf ib ,通過這些分量的值來調(diào)整光源的顏色。2.2 鏡面反射光(specular reflection)對于理想鏡面,反射光集中在一個方向,并遵守反射定律。對一般的光滑表面, 反射光集中在一個范圍內(nèi),且由反射定律決定的反射方向光強最大。因此,對于同 一點來說,從不同位置所觀察到的鏡面反射光強是不同的。鏡面反射光強可表示為:is = ipks cos71 (a), a e(0,號)(2.4)其中心是與物體有關(guān)的鏡面反射系數(shù)o為視線方向u與反射方向r的夾角肌為 反射指數(shù),反映了物體表面的光澤程度,一般為1 - 2000 ,數(shù)目越大物體表面越光 滑。鏡面反射光將會在反射方向附
10、近形成很亮的光斑,稱為高光現(xiàn)象。同樣的,將u和r都格式化為單位向量,鏡面反射光強可表示為:is = ip 心(r it(2.5)其中,/?可由r = n2 cosd- l = 2n(n 厶)一厶計算。對多個光源的情形,鏡 面反射光強可表示為:mis = ks 工/".gw)71(2.6)i-1鏡面反射光產(chǎn)生的高光區(qū)域只反映光源的顏色,如在紅光的照射下,一個物體 的高光域是紅光,鏡面反射系數(shù)仏是一個與物體的顏色無關(guān)的參數(shù),正如我們前面 已經(jīng)提到的,在簡單光照明模型中,我們只能通過設(shè)置物體的漫反射系數(shù)來控制物 體的顏色。2.3 環(huán)境光(ambient light)環(huán)境光是指光源間接對物體
11、的影響,是在物體和環(huán)境之間多次反射,最終達到 平衡時的一種光。我們近似地認為同一環(huán)境下的環(huán)境光,其光強分布是均勻的,它 在任何一個方向上的分布都相同。例如透過厚厚云層的陽光就可以稱為環(huán)境光。在簡單光照明模型中,我們用一個常數(shù)來模擬環(huán)境光,用式子表示為:ie = ia-kao 其中:心為環(huán)境光的光強,心為物體對環(huán)境光的反射系數(shù)。2.4phong光照明模型綜合上面介紹的光反射作用的各個部分,phong光照明模型有這樣的一個表述: 由物體表面上一點p反射到視點的光強i為環(huán)境光的反射光強厶、理想漫反射光強山、 和鏡面反射光厶的總和,即i = la心+ 1卩kdan) + /pks(rvr(2.7)在用
12、phong模型進行真實感圖形計算時,對物體表面上的每個點p ,均需計算 光線的反射方向r ,再由#計算(rl/)。為減少計算量,我們可以作如下假設(shè):a)光 源在無窮遠處。即光線方向厶為常數(shù);b)視點在無窮遠處,即視線方向卩為常數(shù);c) 用(h/v)近似(r k)o這里h為厶和1/的平分向量,h =(厶+ 1/)/|厶+ v o在這種簡 化下,由于對所有的點總共只需計算一次h的值,節(jié)省了計算時間均。在實際的應(yīng)用中,phong光照模型是一個經(jīng)驗?zāi)P?,還具有以下的一些問題:用phong模型顯示岀的物體象塑料,沒有質(zhì)感;環(huán)境光是常量,沒有考慮物體之間 相互的反射光;鏡面反射的顏色是光源的顏色,與物體的
13、材料無關(guān);鏡面反射的計 算在入射角很大時會產(chǎn)生失真等。本文將通過紋理貼圖來改善不真實效果。3交互演示系統(tǒng)的功能結(jié)構(gòu)本交互演示系統(tǒng)通過模擬太陽系中,太陽、地球和月球之間公轉(zhuǎn)與自轉(zhuǎn)來實現(xiàn) 模型的運動、光照、紋理等功能,并啟用混合色與鎖定緩存來實現(xiàn)月球陰影投射到 地球的功能。為了能真實模擬宇宙背景與星空閃爍的現(xiàn)象,本論文自定義了星星類、 采用隨機算法與模型變換來實現(xiàn),同時實時計算地球坐標(biāo)用以跟蹤,實現(xiàn)視點跟蹤,獲得“跟蹤地球”,“參考點鎖定地球”的效果。系統(tǒng)主要結(jié)構(gòu)如圖1所示。r1建型系鄉(xiāng)arl光照模型 的交互式 演示系統(tǒng)h4r1m動系纟ar1ft片圖系纟ar1a照系纟a圖1光照模型的交互式演示系統(tǒng)
14、的主體結(jié)構(gòu)光照模型的交互式演示系統(tǒng)分為6個主要的分系統(tǒng),他們作用分別為1. 模型系統(tǒng):用于構(gòu)建場景中的模型,包括太陽、地球、月亮、星星等;2. 運動系統(tǒng):用于改變場景中模型的位置,達到運動的效果;3. 光照系統(tǒng):用于改變場景中的各種光線,使得場景具有真實感;4. 貼圖系統(tǒng):用于對場景中的模型貼上圖片,使得模型具有真實感;5. 觀察系統(tǒng):用于改變視角與方向,能讓使用者從各個角度觀察場景;6. 交互式系統(tǒng):用于人機對話,使得系統(tǒng)場景按照使用者的意圖變化。模型系統(tǒng)是用來構(gòu)建場景中的模型。本系統(tǒng)構(gòu)造的是一個包含太陽、地球和月 球的太陽系,除此之外還包括外太空的星云。場景中的太陽、地球、月亮以及月球陰影
15、是簡單的球體,使用 glutsolidsphere(gldouble radius,glint slices,glint stacks)函數(shù)來生成。通過半徑 radius來改變球體的大小。其中太陽的半徑是17 ,地球的半徑是12、月球半徑是6。這樣 設(shè)計是為了在符合太陽大于地球大于月球的大致事實的情況下讓顯示效果明顯。 (太陽的體積是地球的130萬倍,按照現(xiàn)實比例是無法在一張圖片上同時清晰地現(xiàn) 實地球與太陽的。)slices和stacks是控制球體經(jīng)緯度細分,越大的話球體越光滑。星星是場景中位于遠處的立方體,使用glutwirecube(gldouble size)函數(shù)來生成。 通過size來
16、改變立方體的邊長。星體的直徑在1.5-2.5之間,這個大小是讓星體在遠 處呈現(xiàn)一個小點那么大,有個大小范圍是為了防止星體千篇一律而導(dǎo)致的不真實感。場景中還有一個隱性的物體模型,那就是背景球。背景球,顧名思義是一個球 體。這個球體半徑非常大,繪制后會將場景中的太陽、地球、月亮和一部分星星包 括在其內(nèi)部。而觀察者的視點也在其內(nèi)部,因此我們只能看到其內(nèi)表面,位于背景 球外部的物體模型就無法看到,這也是后面介紹的星星閃爍的一個重要部分。3.2運動系統(tǒng)運動系統(tǒng)用來改變場景中模型的位置,達到運動的效果。運動包含以下幾個部 分,如圖2所示。運動系統(tǒng)太陽地球星體太陽自傳月球星體閃爍圖2運動系統(tǒng)功能圖1. 太陽
17、、地球和月球的自轉(zhuǎn)公轉(zhuǎn)實現(xiàn)方法自轉(zhuǎn)是天體或天體系統(tǒng)繞質(zhì)心的定點旋轉(zhuǎn)。為了更好的顯示星球的自轉(zhuǎn)效果, 本系統(tǒng)將每個星球的三維坐標(biāo)系統(tǒng)繪制出來。在繪制星球前,首先將三維坐標(biāo)系統(tǒng) 繞星球的自轉(zhuǎn)軸旋轉(zhuǎn),然后以該坐標(biāo)系統(tǒng)的原點為球心繪制星球,接著將坐標(biāo)系逆 向旋轉(zhuǎn)相同的角度進行還原,此時繪制的星球會隨著坐標(biāo)系一起旋轉(zhuǎn)。利用定時器 不斷的重復(fù)以上過程,星球產(chǎn)生了自轉(zhuǎn)的效果。公轉(zhuǎn)是天體繞天體系統(tǒng)的主天體或質(zhì)心的軌道運動,即一個星球繞另一個星球 不斷的位移。如圖3所示。在繪制公轉(zhuǎn)星球前先將坐標(biāo)系旋轉(zhuǎn)再平移,然后再繪制 星球,最后將坐標(biāo)系還原(這里的還原也是前面過程的逆向,即先反向平移再反向旋轉(zhuǎn)),此時繪制的星
18、球會隨著坐標(biāo)系平移與旋轉(zhuǎn)。與自轉(zhuǎn)同理,利用定時器不斷 重復(fù)以上過程,旋轉(zhuǎn)角度漸漸變大,視覺上就產(chǎn)生了地球繞太陽公轉(zhuǎn)的效果。同理, 繪制月球繞地球公轉(zhuǎn)是將地球作為坐標(biāo)原點,將坐標(biāo)系旋轉(zhuǎn)一定的角度再平移,此 時繪制月球并還原坐標(biāo)系就能實現(xiàn)月球繞地球公轉(zhuǎn)。2. 星空閃爍的實現(xiàn)方法星體閃爍通過星體不斷的運動實現(xiàn)的。星體不斷的進出背景球,時而在背景球 內(nèi)部而被看到,時而在背景外部,被背景球遮住從而看不到,這樣一來就產(chǎn)生了閃 爍的效果。而星體的進出也是一種運動,這種運動與星球公轉(zhuǎn)運動的實現(xiàn)方法類似, 不同的是公轉(zhuǎn)運動變化的是旋轉(zhuǎn)角度,而星體進出運動變化的是平移量,即距原點 的距離。星空中,有著數(shù)目不等的星
19、體,每一顆星體都對應(yīng)了一個變量,所有的星體變 量用自定義類cstar的數(shù)組保存。cstar的成員變量如表1所示。表lcstar成員變量詳表類型 變量名說明float3 col星體顏色floatxr星體繞x軸旋轉(zhuǎn)角度floatyr星體繞y軸旋轉(zhuǎn)角度floatzr星體繞z軸旋轉(zhuǎn)角度floatdepth星體離坐標(biāo)原點距離floatspeed星體移動速度floatsize星體大小繪制星體時將坐標(biāo)系繞x、y、z軸各旋轉(zhuǎn)xr、yr、zr度,再平移depth后繪制 顏色為col3,大小為size的立方體作為星體(這里不用球體而用立方體作為星體 是為了減小系統(tǒng)開銷b為了體現(xiàn)星空的神秘莫測,系統(tǒng)使用隨機函數(shù)ra
20、nd()生成orand_max之間的 一個隨機數(shù),控制星星的數(shù)量和分布,其中rand_max是stdlib.h中定義的一個整 數(shù),它與系統(tǒng)有關(guān)。為了使程序在每次執(zhí)行時都能生成一個新序列的隨機值,通常通過為隨機數(shù)生成器提供一粒新的隨機種子。函數(shù)srand()(來自stdlib.h)可以為隨機數(shù)生成器播散種子。只要種子不同rand()函數(shù)就會產(chǎn)生不同的隨機數(shù)序列。生成了隨機數(shù)后將其整 除一個正整數(shù)后取余,得到的余數(shù)就是小于這個正整數(shù)的隨機數(shù)了。3. 月影變化的實現(xiàn)方法因為月球陰影與月球運動同步,故月球陰影也是繞地球公轉(zhuǎn)。然而陰影只存在 于地球被月球遮住的部分,因此陰影需要有出現(xiàn)、變大、最大、變小、
21、消失這五個 過程。陰影的出現(xiàn)變大然后變小消失原理與月球繞地球公轉(zhuǎn)類似,只是平移也有變 化,如圖4所示。ab > i d# j 、i1x/o、 、圖4月球陰影變化示意圖本次設(shè)計中陰影設(shè)計成一個帶透明色的繞地球公轉(zhuǎn)的球體,其公轉(zhuǎn)半徑隨著月 球、地球、太陽間的夾角變化。當(dāng)夾角為0 ,即太陽、月球、地球連成一線,月球 遮住太陽時,陰影的公轉(zhuǎn)半徑最大,此時陰影球有一部分突出地球表面。隨著月球 的運動,夾角變大,陰影公轉(zhuǎn)半徑變小,突出部分也跟著變小直至沒入地球內(nèi)部消 失不見。夾角的變換取0180度。3.3光照系統(tǒng)光照系統(tǒng)是用來改變場景中的各種光線,使得場景具有真實感的。光照系統(tǒng)包 含以下幾個部分,如
22、圖5所示。光照系統(tǒng)光源物體白發(fā)光環(huán)境光亮度的光照參數(shù),改變opengl光照函數(shù)gllight(啲參獲得不同的光照效果。本系統(tǒng)中環(huán)境光在本系統(tǒng)中將太陽設(shè)置為光源,光源的各顏色分量不同將導(dǎo)致場景中的部分物 體顏色的變化,此光源可以通過改變rgb分量與總體亮度來展現(xiàn)不同的效果。光源有許多特性,如顏色、位置、方向等,通過設(shè)置和調(diào)節(jié)交互演示系統(tǒng)界面的光源位置與太陽的中心重合,即原點(0.0,00 0.0)。物體自發(fā)光即物體的材質(zhì)顏色,這里指的是月球?qū)Ω鞣N顏色光線的反射率,他 同樣可以改變rgb分量的值,使得光照模型更加直觀,并且可以很清楚地表示岀材 質(zhì)rgb值和光源rgb值的關(guān)系。環(huán)境光在這指的是來自宇
23、宙空間的各種射線組合 成的光,這將對物體背光面與背景貼圖產(chǎn)生影響。3.4貼圖系統(tǒng)貼圖系統(tǒng)是用來對場景中的模型貼上圖片,使得模型具有真實感。本系統(tǒng)貼圖對象為:太陽、地球、月球以及背景球。其中太陽、地球、月球是貼于其外表面,而背景球是貼于其內(nèi)表面。圖6星球貼圖上圖是星球的貼圖,他們從左至右分別是太陽、地球、月球的表面貼圖,將這 三幅圖貼于球體表面就是我們看到的真實的星球了。3.5觀察系統(tǒng)觀察系統(tǒng)是為了幫助使用者從任意位置、任意角度觀察場景的系統(tǒng)。通常情況 下觀察一個物體或場景需要確定3個方面 觀察點、視線方向以及視線向上的方向。將場景看成是一座城市,觀察點就是人所在的位置。人的位置不同,看到的東
24、西就會不一樣。確定了人的位置后還不夠,位置確定后人眼的方向可以是上、下、 左、右、前、后,因此需要確定人的視線的方向,此時選定一個視線上的參考點, 那么以觀察點為起點,參考點為終點的向量就是視線的方向向量。確定了以上兩點 后我們還無法確定人的狀態(tài),即人是歪著腦袋觀察的還是倒立時觀察的,所以我們 還要確定視線的向上的方向。視點(眼)標(biāo)來自觀察者的觀察點,與可能發(fā)生的任何變換無關(guān),可以把它們 視為“絕對”屏幕坐標(biāo)。因此,眼坐標(biāo)并不是真正的坐標(biāo),而是代表一個虛擬的固定 坐標(biāo)系,用作參考的公共框架。3.6交互式系統(tǒng)交互式系統(tǒng)是采用人機交互技術(shù),通過調(diào)節(jié)控制參數(shù)使得用戶可以根據(jù)自己的 意圖對場景進行變化
25、。本系統(tǒng)主界面,如圖7所示。左邊是圖形繪制區(qū),右邊是控 制區(qū)。用戶可以操作控制區(qū)中交互式控件,對星球運動速度、視點、顏色等參數(shù)的 修改和調(diào)節(jié),調(diào)節(jié)的結(jié)果實時顯示在左邊的繪制區(qū)。圖7系統(tǒng)主界面本系統(tǒng)設(shè)計了“坐標(biāo)系統(tǒng)及速度光照貼圖視點及方向”4個標(biāo)簽頁,如圖8 所示?!白鴺?biāo)系及速度”標(biāo)簽頁,提供了地球繞太陽xyz軸旋轉(zhuǎn)角度和方向的調(diào)節(jié),還 可以自由調(diào)節(jié)太陽自傳、地球和月球公轉(zhuǎn)速度;該標(biāo)簽頁中控制速度的四個滑動條 左側(cè)各有一個按鈕,這是仿照播放器設(shè)置的“繼續(xù)/暫?!卑粹o,可以快捷的切換 模型的運行狀態(tài)。“光照”標(biāo)簽頁,可以調(diào)節(jié)太陽光的rgb顏色八月球表面rgb顏色(發(fā)射系數(shù)x 環(huán)境光的亮度大小。“貼
26、圖”標(biāo)簽頁,可以選擇星球是否貼圖、是否開啟一部分顯示效果以及設(shè)置背 景星空中星星的數(shù)量?!耙朁c及方向”標(biāo)簽頁,可以設(shè)置觀察者的視角,調(diào)整視角的兩個參數(shù)可以觀察場景中任意一個位置的圖像,通過對地球或月球的視點跟蹤功能,可以觀測到日食、月亮陰晴缺的天文現(xiàn)象。每個選項卡中還配有“還原本頁設(shè)置”按鈕,用于將本頁設(shè)置還原為默認值。圖8交互式系統(tǒng)頁面截圖4運行結(jié)果與分析4.1模型的整體旋轉(zhuǎn)本次設(shè)計的世界坐標(biāo)軸定義如下:過太陽球心,水平于顯示器的為x軸,向右 為正方向;過太陽球心,垂直于顯示器平面為y軸,指向屏幕外的方向為正方向; 過太陽球心,豎直的為z軸,向上為正方向。通過調(diào)節(jié)“坐標(biāo)系及速度”標(biāo)簽頁中繞
27、x、y、z軸的旋轉(zhuǎn),可以獲得如圖9所示的效果。.丸 a/ %).材 b“'dr7護、c rxw%.9圖9世界坐標(biāo)系的旋轉(zhuǎn)圖a為參考圖,此時模型整體圍繞x軸與y軸各旋轉(zhuǎn)了 20度。圖b在參考圖a 的基礎(chǔ)上繞x軸多旋轉(zhuǎn)了 30度,效果相當(dāng)于模型整體向前翻轉(zhuǎn)了 30度。圖c在參考圖a的基礎(chǔ)上繞y軸多旋轉(zhuǎn)了 30度,效果相當(dāng)于模型整體向右翻轉(zhuǎn)了 30度。圖 d在參考圖a的基礎(chǔ)上繞z軸多旋轉(zhuǎn)了 30度,效果相當(dāng)于模型繞水平面逆時針旋轉(zhuǎn) 了 30 度。4.2光照演zf結(jié)果本次設(shè)計中光照使用的是rgb顏色模型 即任意光線或色彩使用r(紅).6(綠' b (藍)三種光線或色彩混合而成,每種色值
28、范圍為0-255o通過調(diào)節(jié)“光照”標(biāo)簽頁 中對光源、月球自發(fā)光以及環(huán)境光,可以獲得如圖10圖示的光照變化效果。圖a為參考圖,此時光源為白光(rgb = (255, 255, 255),月球的自發(fā)光系數(shù)為 (255, 255, 255)即反射所有光。圖b只將光源設(shè)為紅光(rgb = (255, 0, 0),可以看到地球與月球受到光源的影 響同時變?yōu)榧t色的了。圖c是在參考圖a的基礎(chǔ)上將月球自發(fā)光系數(shù)改成(255, 255, 0),即只反射紅光 和綠光,藍光完全吸收??梢钥吹?,吸收藍光后,月球變成黃色的了,這是由紅光 與綠光混合的結(jié)果。圖d是在圖c的基礎(chǔ)上修改光源參數(shù)為藍光(rgb = (0, 0,
29、 255)o此時因為月球完 全吸收藍光,于是圖片上只能看到太陽與地球,月球無反射光線,看不到。圖10光照變化效果圖圖e、圖f是月球陰影特寫。圖e中環(huán)境光亮度只有15 ,即最大亮度的15% , 而圖f中環(huán)境光達到了 50o兩幅圖中陰影有很明顯的區(qū)別,在環(huán)境光高的時候,陰 影呈現(xiàn)出高透明,環(huán)境光低的時候,陰影透明度低甚至不透明,這樣可以使的陰影 具備高度的真實感。4.3貼圖與星空演示a b曲-d “ . .- 圖口貼圖與星空在“光照”標(biāo)簽頁中關(guān)閉太陽、地球、月球的貼圖,可以獲得圖11(a)的效果,此 時太陽、地球和月球僅僅是具有明暗效果的球體。圖b在圖a的基礎(chǔ)上添加了太陽、 地球、月球以及背景球的
30、貼圖,使得系統(tǒng)具有了真實感。圖c為加上了星光,讓系 統(tǒng)不再是一個簡單孤獨的小太陽系,有了星空背景的點綴,系統(tǒng)更具有活力。圖d 背景是由隨機函數(shù)生成的另一幅星空圖,變幻莫測的星空增強了系統(tǒng)的真實感與樂4.4日食與月相的演示圖12日食圖圖13月相變化通過對地球的視點跟蹤,當(dāng)月球位于地球和太陽之間,并呈一條直線是,可以 獲得圖10是日食的過程。圖a是初虧,是第一次“外切”,也是日食的開始;圖匕是 食既,是日全食(或日環(huán)食)的開始;圖c是生光,是日全食的結(jié)束;圖d表示日 食的結(jié)束,太陽再一次完整的呈現(xiàn)在眼前。通過對月球進行視點跟蹤,可以獲得月相的變化,如圖11所示。圖a為新月, 也叫做“朔”,這一天為
31、農(nóng)歷的初一;圖13為上弦月,月球繼續(xù)朝前旋轉(zhuǎn),到了農(nóng)歷初 七、八,恰好看到月球的一半,稱之為吐弦”;圖c為滿月,到了農(nóng)歷十五、十六, 月球轉(zhuǎn)到地球的另一面,這時地球在太陽和月亮的中間,月球被太陽照亮的那一半 正好對著地球,滿月又稱之為“望:圖d為下弦月,到了農(nóng)歷二十三,滿月虧去了一 半,這就是“下弦:5結(jié)束語本文以phong光照模型為基礎(chǔ),實現(xiàn)了具有星光背景的日地月運行的光照模型 的交互演示系統(tǒng)。該系統(tǒng)模擬太陽系中,太陽、地球和月球的運作過程中光照變化, 真實的再現(xiàn)了日食、月亮的陰晴圓缺等一系列自然現(xiàn)象。并通過貼圖、運動、視點 變換來展現(xiàn)一個真實的小太陽系,該系統(tǒng)可以對太陽、地球月亮的公轉(zhuǎn)和自轉(zhuǎn)進行 實時動態(tài)控制,本次設(shè)計可作為計算機真實感圖形學(xué)教學(xué)示例和宇宙啟蒙教育材料。參考文獻1 edward angel,吳文國(譯).交互式計算機圖形學(xué)“基于opengl的自頂向下方法(第4版)m.北京:清華大學(xué)岀版社2007, 10 - 27.2 彭群生等.一種基于環(huán)境映照變換的快速光線跟蹤算法卩計算機學(xué)報,1998, 21(增刊):308-314.吳恩華等.
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國得趣圖茶具數(shù)據(jù)監(jiān)測研究報告
- 2025至2030年中國幼兒塑料床數(shù)據(jù)監(jiān)測研究報告
- 2025年度民辦學(xué)校教職工崗位聘任與管理協(xié)議
- 二零二五年度商標(biāo)共許可與品牌推廣及市場運營合同
- 2025年度離職員工離職后保密協(xié)議與商業(yè)秘密保護合同模板
- 二零二五年度排煙道安裝與綠色建筑認證合同
- 2025年度生豬養(yǎng)殖與農(nóng)業(yè)人才培養(yǎng)合作合同模板
- 二零二五年度農(nóng)村房屋租賃權(quán)轉(zhuǎn)讓與租金調(diào)整機制合同
- 二零二五年度文化演藝活動合同提前終止申請書
- 二零二五年度挖機租賃與操作人員派遣合同
- 六年級下冊音樂全冊教案湖南文藝出版社湘教版
- Tracepro-實例學(xué)習(xí)教程
- 進貨單出貨單(Excel表格模板)
- 《病理學(xué)》教案
- 綜合日語第二冊練習(xí)冊(修訂版)答案精編版
- 公眾責(zé)任保險實用教案
- 吳齊南先生生平
- 守株待兔中英文PPT課件
- 質(zhì)監(jiān)站對監(jiān)理工作監(jiān)督的要點
- 2020年英語筆譯二級綜合能力樣題
- 中 國 作 家 協(xié) 會 入 會 申 請 表
評論
0/150
提交評論