計(jì)算機(jī)圖形學(xué)真實(shí)感圖形的生成技術(shù)課件_第1頁
計(jì)算機(jī)圖形學(xué)真實(shí)感圖形的生成技術(shù)課件_第2頁
計(jì)算機(jī)圖形學(xué)真實(shí)感圖形的生成技術(shù)課件_第3頁
計(jì)算機(jī)圖形學(xué)真實(shí)感圖形的生成技術(shù)課件_第4頁
計(jì)算機(jī)圖形學(xué)真實(shí)感圖形的生成技術(shù)課件_第5頁
已閱讀5頁,還剩56頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第10章

真實(shí)感圖形的生成技術(shù)10.1消隱技術(shù)10.2光照技術(shù)10.3物體表面細(xì)節(jié)的模擬10.4陰影的生成10.5圖形反走樣技術(shù)10.6用OpenGL生成真實(shí)感圖形紋理映射

真實(shí)感圖形繪制:借助數(shù)學(xué)、物理、計(jì)算機(jī)等學(xué)科的知識(shí)在計(jì)算機(jī)二維顯示屏上產(chǎn)生三維場(chǎng)景的真實(shí)逼真圖像、圖形。應(yīng)用:計(jì)算機(jī)輔助設(shè)計(jì)、多媒體教育、虛擬現(xiàn)實(shí)系統(tǒng)、科學(xué)計(jì)算可視化、動(dòng)畫制作、電影特技模擬、計(jì)算機(jī)游戲等。(d)理想鏡面反射方向與視線方向的夾角

(a)漫反射(b)理想鏡面反射(c)一般光滑表面的鏡面反射圖6-6光學(xué)反射模型

光學(xué)反射模型通常物體表面的反射光可以認(rèn)為包含三個(gè)分量:對(duì)環(huán)境光的反射、對(duì)特定光源的漫反射和鏡面反射。

環(huán)境光的反射:環(huán)境光(ambientlight)來自周圍環(huán)境(如墻面)散射的光,物體對(duì)環(huán)境光的反射分量表示:

其中Ia是入射的環(huán)境光亮度,Ka是環(huán)境光漫反射系數(shù),漫反射(diffusereflection):蘭伯特(Lambert)余弦定律指出:當(dāng)點(diǎn)光源照射到一個(gè)漫反射體時(shí),其表面反射光亮度和光源入射角(入射光線和表面法矢量的夾角)的余弦成正比,即

其中Il是來自點(diǎn)光源的入射光亮度。Kd是漫反射系數(shù),與物體表面性質(zhì)有關(guān)。是入射光線和表面法矢量的夾角。鏡面反射(specularreflection):對(duì)于純鏡面,反射光和入射光對(duì)稱地分布在表面法向的兩側(cè)。對(duì)于一般光滑表面,表面可理解為由許多朝向不同的微小平面構(gòu)成,入射光經(jīng)許多微小平面反射后形成的反射光不再是單向的,而是分布于理想鏡面反射方向的周圍。通常采用余弦函數(shù)的冪次來模擬一般光滑表面的鏡面反射光的空間分布。

Il是入射光亮度。Ks是物體表面鏡面反射系數(shù),為理想鏡面反射方向與視線方向的夾角,n為鏡面反射光的會(huì)聚指數(shù)。蘭伯特反射光照模型只考慮對(duì)環(huán)境光的反射分量和對(duì)特定光源的漫反射分量,則物體表面的反射光亮度為:Phong光照模型考慮環(huán)境光、漫反射和鏡面反射,則物體表面的反射光亮度為:光的亮度與傳播距離的平方成反比,Il為光源處的光亮度,Rommey提出衰減因子1/dp可以取得比較真實(shí)的效果。此時(shí)Phong光照模型可以進(jìn)一步描述為:其中d是物體上當(dāng)前考察點(diǎn)到視點(diǎn)的距離,K是一個(gè)任意的常量,。將光亮度轉(zhuǎn)換成為光柵圖形顯示器采用的RGB三基色進(jìn)行計(jì)算,如果存在多個(gè)光源,則將效果線性相加。此時(shí)光照模型可以描述為:建立簡單光照模型后,就可以用于消隱算法中計(jì)算像素所對(duì)應(yīng)的物體上可見點(diǎn)的亮度。圖6-8對(duì)P點(diǎn)進(jìn)行雙線性插值

Phong明暗處理(插值法矢)如圖6-8,P1、P2、P3是多邊形頂點(diǎn),其法矢量視為共該點(diǎn)的所有多邊形法矢量的平均值。由P1、P2的法矢量可以線性插值計(jì)算出A點(diǎn)的法矢量,由P1、P3的法矢量可以線性插值計(jì)算出B點(diǎn)的法矢量,于是P點(diǎn)的法矢量可以由A、B點(diǎn)處的法矢量線性插值計(jì)算出,計(jì)算出P的法矢量后應(yīng)用簡單光照模型可以計(jì)算出P點(diǎn)的光亮度。

Gouraud明暗處理(插值顏色)先利用光照模型計(jì)算出多邊形頂點(diǎn)處亮度,然后對(duì)亮度進(jìn)行雙線性插值,直接獲得像素的顏色,如圖6-8,P1、P2、P3是多邊形頂點(diǎn),其亮度已經(jīng)計(jì)算出。A點(diǎn)的亮度可以由P1、P2點(diǎn)的亮度線性插值計(jì)算出,B點(diǎn)的亮度可以由P1、P3點(diǎn)的亮度線性插值計(jì)算出,于是P點(diǎn)的亮度可以由A、B點(diǎn)的亮度線性插值計(jì)算出。

Phong明暗處理計(jì)算量遠(yuǎn)大于Gouraud明暗處理,但效果好。光線跟蹤光線跟蹤技術(shù)是Whitted由光線投射技術(shù)發(fā)展的。從視點(diǎn)V向投影面上與像素e對(duì)應(yīng)的點(diǎn)投射一光線,P1是該光線與場(chǎng)景中的物體相交的、離視點(diǎn)最近的點(diǎn)。按整體光照模型,計(jì)算P1點(diǎn)的光亮需要計(jì)算源自其它物體的鏡面反射光和規(guī)則透射光,如圖,在P2、P3點(diǎn)分別沿相應(yīng)鏡面反射方向、規(guī)則透射方向發(fā)出一條光線與景物求交,欲求出交點(diǎn)處對(duì)P2、P3的反射光亮度,如此追蹤下去,實(shí)際上是自然界光照明物理過程的的近似逆過程,光線跟蹤故此得名。光線追蹤的中止條件如果發(fā)出的光線與所有景物無交點(diǎn),則來自這條光線方向上的的強(qiáng)度視為0如果發(fā)出的光線所處的追蹤深度已超出預(yù)先指定的追蹤深度,則來自這條光線方向上的的強(qiáng)度視為0考察來自發(fā)出的光線方向上的亮度對(duì)顯示像素亮度的貢獻(xiàn)系數(shù)小于預(yù)先指定的貢獻(xiàn)系數(shù)時(shí),則來自這條光線方向上的的強(qiáng)度視為0光線跟蹤的遞歸函數(shù)實(shí)現(xiàn)適合繪制表面光潔度高或具有透明表面和鏡面的場(chǎng)景缺點(diǎn):耗時(shí)多容易引起圖形走樣10.3物體表面細(xì)節(jié)的模擬物體表面的細(xì)節(jié)分為兩類一類是由物體表面顏色色彩、明暗變化體現(xiàn)出來的細(xì)節(jié)(取決于物體表面的材質(zhì)屬性);一類是由物體表面不規(guī)則的細(xì)小凹凸造成的細(xì)節(jié)(取決于物體本身的幾何形狀)。紋理映射分類顏色紋理映射,用來在光滑表面上產(chǎn)生花紋圖案的效果幾何紋理映射,用來使物體表面產(chǎn)生凹凸不平的效果顏色紋理映射技術(shù)顏色紋理映射的三個(gè)主要步驟:(1)紋理函數(shù)定義;(2)映射函數(shù)定義;(3)紋理映射的實(shí)施;

映射圖6-11紋理圖案(a)紋理定義域(b)物體表面圖6-12映射函數(shù)的建立場(chǎng)景繪制時(shí)利用消隱技術(shù)確定物體表面的可見部分或者是像素所對(duì)應(yīng)的物體表面上的可見點(diǎn)然后應(yīng)用光照模型計(jì)算物體表面上可見點(diǎn)的亮度線投射算法和光線追蹤算法可以用于陰影的生成。對(duì)光線投射算法而言,如果光源不能直接照射到像素所對(duì)應(yīng)的物體表面上的可見點(diǎn),則物體表面上當(dāng)前可見點(diǎn)的亮度只包含環(huán)境光反射項(xiàng)。對(duì)光線追蹤算法而言,如果光源不能直接照射到當(dāng)前追蹤到的物體表面上的點(diǎn),則該點(diǎn)反射的光亮度只包括簡單光照模型中的環(huán)境光反射項(xiàng)、來自其它物體經(jīng)當(dāng)前表面鏡面反射的光亮度、來自其他物體經(jīng)當(dāng)前表面規(guī)則透射的光亮度。

10.5圖形反走樣技術(shù)圖6-14點(diǎn)采樣的圖形走樣在光柵顯示器上顯示直線段或曲線段時(shí)或多或少地呈現(xiàn)鋸齒狀。原因用這有限個(gè)像素表示連續(xù)的直線段、曲線段就必須對(duì)直線段、曲線段進(jìn)行采樣,最終在光柵顯示器上表示直線段或曲線段的只是一個(gè)個(gè)離散的有一定面積的像素。這種用離散量表示連續(xù)量引起的失真現(xiàn)象稱之為走樣(aliasing)。用于減少或消除這種失真現(xiàn)象的技術(shù)稱為反走樣(antialiasing)。

反走樣的方法有兩種:一種是提高采樣率,以高于顯示分辨率的精度對(duì)畫面進(jìn)行計(jì)算,然后以某種方式取平均獲得低分辨率的顯示圖像;另一種方法是把像素看成一個(gè)區(qū)域,求出像素內(nèi)各可見物體所占據(jù)的面積,然后對(duì)這些物體的光亮度進(jìn)行面積加權(quán)平均。

OpenGL認(rèn)為物體表面的反射光包含三個(gè)分量:物體本身發(fā)出的光、對(duì)環(huán)境光的反射,對(duì)特定光源的反射。①物體本身發(fā)出的光。②對(duì)環(huán)境光的反射Iglobal,物體表面的環(huán)境光反射系數(shù)為Ka,則物體對(duì)全局環(huán)境光的反射為

。③對(duì)特定光源的反射。在OpenGL中,光源被定義為聚光燈。需要指定光源的位置(即錐頂),聚光燈的方向(即圓錐軸的方向),聚光燈的散射角(即圓錐中軸和邊的夾角)。聚光燈將光的發(fā)射形狀調(diào)整為圓錐形,此時(shí)空間光強(qiáng)度分布可以用聚光燈光強(qiáng)分布系數(shù)乘以錐頂處聚光燈光強(qiáng)給出。圖6-15視線和反射光線夾角

圖6-16聚光燈綜合三個(gè)分量,在OpenGL中物體表面的反射光亮度為:

為減小計(jì)算量,OpenGL采用Gouraud明暗處理方法。glShadeModel(GL_SMOOTH)和glShadeModel(GL_FLAT)形式的函數(shù)調(diào)用來設(shè)置。

OpenGL的紋理映射方法在OpenGL中紋理函數(shù)是以數(shù)字圖像的形式定義的。定義二維紋理的函數(shù)聲明為:voidglTexImage2D(GLenumtarget,GLintlevel,GLintcomponents,GLsizeiwidth,GLsizeiheight,GLintborder,GLenumformat,GLenumtype,constGLvoid*pixels)(參數(shù)含義參見OpenGL專著)OpenGL提供了兩種方式來建立物體表面上點(diǎn)和紋理空間的對(duì)應(yīng)關(guān)系:一種方式是在繪制OpenGL基本圖元(如線段、三角形、多邊形)時(shí)在glVertex*命令之前調(diào)用glTexCoord*命令明確地給出當(dāng)前頂點(diǎn)所對(duì)應(yīng)的紋理坐標(biāo),而圖元內(nèi)部點(diǎn)的紋理坐標(biāo)則利用頂點(diǎn)處的紋理坐標(biāo)采用線性插值的方法計(jì)算出來;另一種方式是OpenGL內(nèi)部定義了幾種類型的紋理映射函數(shù),用戶可以通過glTexGen*()函數(shù)來選擇希望使用的紋理映射函數(shù)類型,并且可以為所選類型的紋理映射函數(shù)指定系數(shù)。

OpenGL采用逆向紋理映射技術(shù)來具體實(shí)現(xiàn)紋理映射。

紋理映射內(nèi)容概要紋理映射基礎(chǔ)關(guān)于走樣反走樣技術(shù)目前的技術(shù)狀況發(fā)展前景凹凸紋理——由物體表面的凹凸不平形成的表面細(xì)節(jié)。如褶皺的桔子皮表面、未磨光石塊表面凹痕等。紋理映射基礎(chǔ)紋理的定義方法連續(xù)法

將紋理函數(shù)定義為一個(gè)二元函數(shù),函數(shù)的定義域就是紋理空間。紋理空間F(u,v)(0,0)(1,1)紋理的定義方法連續(xù)法

紋理函數(shù)——用于生成紋理數(shù)據(jù)。使用特殊的函數(shù)可以用于模擬現(xiàn)實(shí)生活中的一些常見紋理,如函數(shù)可以用于模擬國際象棋的黑白方格棋盤可以用于模擬粗布紋理紋理的定義方法離散法

使用一個(gè)二維數(shù)組來定義紋理,這個(gè)數(shù)組可以代表一個(gè)用于光柵圖形顯示的字符位圖,可以是程序生成的圖形、交互式繪圖系統(tǒng)繪制的各種圖案、掃描儀輸入的數(shù)字化圖象等。紋理的定義方法離散法

將紋理定義在一個(gè)二維數(shù)組中,代表紋理空間中行間隔、列間隔固定的一組網(wǎng)絡(luò)點(diǎn)上的紋理值,網(wǎng)格點(diǎn)外的紋理值可以通過插值獲得。紋理的映射紋理映射就是將二維的紋理映射到三維的物體表面。紋理的映射凹凸紋理——通過對(duì)表面法向量進(jìn)行擾動(dòng)來產(chǎn)生凹凸不平的視覺效果。 定義紋理函數(shù)F(u,v),對(duì)理想表面P(u,v)作不規(guī)則的位移,處理后的結(jié)果為光滑曲面凹凸紋理映射后PFP`+=出現(xiàn)的問題——走樣在生成紋理時(shí),最簡單的取樣方法是點(diǎn)取樣,即把象素中心所對(duì)應(yīng)的紋理空間的點(diǎn)的值作為象素的紋理值,但這樣會(huì)引發(fā)嚴(yán)重的失真,如圖所示反走樣處理適當(dāng)加密取樣之后再進(jìn)行紋理濾波,這需要用比屏幕更高的分辨率進(jìn)行取樣,然后再對(duì)樣本紋理進(jìn)行適當(dāng)?shù)臑V波作為象素的紋理值。需要較大的計(jì)算量先對(duì)紋理圖案進(jìn)行低通濾波,再進(jìn)行取樣,即事先計(jì)算紋理空間中一點(diǎn)附近區(qū)域的紋理平均值,并存入查找表。在生成真實(shí)圖形的紋理時(shí),通過查表獲得紋理值.計(jì)算量較小,不過需要較大的存儲(chǔ)空間反走樣處理一些常用濾波器的縱剖面圖方形三角形三次B-樣條高斯sinc反走樣處理反走樣處理后的紋理未經(jīng)反走樣處理的紋理目前的技術(shù)狀況Mipmap(分級(jí)細(xì)化映射)技術(shù)EnvironmentMapping(環(huán)境映射)技術(shù)BumpMapping(凹凸映射)技術(shù)Mip映射技術(shù)提出:紋理的清晰度直接影響著圖像的真實(shí)感,要想使3D畫面更加精細(xì)就必須使用更高分辨率的紋理貼圖。微機(jī)在進(jìn)行3D紋理貼圖處理時(shí),要先將紋理數(shù)據(jù)讀入顯存,所以高分辨率的紋理貼圖將需要更多的顯存,因此顯存容量成為制約紋理精度的主要因素。解決方法:1.AGP的DIME工作方式

2.紋理壓縮

3.Mip映射技術(shù)Mip映射技術(shù)思想:通過為同一幾何模型提供多種解析度的紋理,并隨著距離變化作相應(yīng)更換,避免在超出人眼感知能力的視距上使用過于精細(xì)的貼圖,以降低系統(tǒng)資源浪費(fèi)Mip映射技術(shù)方法:是將原紋理縮小。為了計(jì)算的簡便,通常是將原紋理按2的冪次方不斷的縮小。Mip映射技術(shù)Mip映射的不足:一般為了減少紋理所占的存儲(chǔ)空間,我們只能對(duì)原紋理進(jìn)行有限次的分級(jí),然而多邊形與觀察者之間的距離卻有無數(shù)種情況。容易造成馬賽克效果。解決方法:雙線性過濾和三線性過濾。Mip映射技術(shù)-雙線性過濾假設(shè)一多邊形對(duì)應(yīng)的Mipmap為5.7×5.7,那么我們將在8×8與4×4的Mipmap中選擇較小的(4×4)。當(dāng)我們?cè)谔畛溥@個(gè)多邊形時(shí)得到一個(gè)紋理空間坐標(biāo)(0.3,0.6)其對(duì)應(yīng)的4×4Mipmap的紋理元素為(1.2,2.4)。這時(shí)我們不是將其簡單的取整,而是在它的周圍取4個(gè)點(diǎn)C1(1.0,2.0),C2(1.0,3.0),C3(2.0,2.0),C4(2.0,3.0)然后對(duì)這4個(gè)點(diǎn)在X,Y方向上進(jìn)行插值。三線性過濾與雙線性過濾的區(qū)別在于它還要在兩個(gè)Mipmap之間進(jìn)行插值。一個(gè)多邊形及其對(duì)應(yīng)的一個(gè)5.7×5.7的Mipmap。這時(shí)我們不是取4×4的Mipmap而是同時(shí)取8×8和4×4兩個(gè)Mipmap。在用掃描線法填充多邊形時(shí)分別計(jì)算一個(gè)屏幕象素對(duì)應(yīng)在這兩個(gè)Mipmap上的紋理元素。然后對(duì)這兩個(gè)紋理元素分別進(jìn)行雙線性插值后得到兩個(gè)紋理元素,然后對(duì)這兩個(gè)紋理元素進(jìn)行插值來得到最后的紋理元素。EnvironmentMappingDevelopedbyBlinnandNewell(1976)ReflectingthesurroundingsonanobjectSimplymaptheenvironmentarrayontoanobjectinrelationshiptotheviewingdirection.Sometimesreferredtoasthe“poorperson‘sray-tacing“.Sinceitisafastapproximationoftheaccurateglobal-illuminationrenderingtechniques.EnvironmentMappingCubemapping,sphericalmapping,parabolicmappingBumpMapping(凹凸映射)顏色紋理只能處理顏色,所生成的物體表面仍然是光滑的。在紋理映射基礎(chǔ)上提出的BumpMapping方法是一種模擬物體表面粗糙紋理的技術(shù),可以不用對(duì)物體的粗糙表面在幾何上進(jìn)行建模就可以改善物體表面的微觀結(jié)構(gòu),如大理石紋理表面雕刻的文字、混凝土墻面等效果。此外,更高級(jí)的真實(shí)感圖形效果如人臉上流淌的汗水也可以通過隨時(shí)間變化的Bumpmapping來模擬。BumpMapping(凹凸映射)EmbossMapping(浮雕貼圖)EnvironmentMappedBumpMapping(EMBM)環(huán)境映射凹凸貼圖BumpMapping(凹凸映射)Emboss(浮雕式凹凸貼圖)使用一高度圖形材質(zhì),該材質(zhì)的每一個(gè)像素用來表達(dá)表面凹凸高度。這種材質(zhì)通過光源轉(zhuǎn)換為一個(gè)或者多個(gè)像素,產(chǎn)生凹凸貼圖。這種凹凸貼圖結(jié)合基本的貼圖產(chǎn)生最后的效果。BumpMapping(凹凸映射)缺點(diǎn):1.這種浮雕貼圖效果的逼真程度十分有限,難以顯示細(xì)微的棱角處的反光效果和復(fù)雜的多環(huán)境光源效果,也無法表現(xiàn)水波和氣流等特殊效果。2.難以表現(xiàn)

溫馨提示

  • 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)論