




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Shading II明暗處理II原著Ed AngelProfessor of Computer Science, Electrical and Computer Engineering, and Media ArtsUniversity of New Mexico編輯 武漢大學(xué)計(jì)算機(jī)學(xué)院圖形學(xué)課程組ObjectivesIntroduce modified Phong modelConsider computation of required vectorsPolygonal ShadingOutline6.3.4 Modified Phong model改進(jìn)的Phong光照模型6.4 Comp
2、utation of vectors向量的計(jì)算6.5 Polygonal Shading多邊形網(wǎng)格的明暗處理6.3.4 Modified Phong Model 改進(jìn)的Phong模型The specular term in the Phong model is problematic because it requires the calculation of a new reflection vector and view vector for each vertex 在Phong模型中,鏡面光項(xiàng)有一個(gè)問(wèn)題,因?yàn)樗枰獮槊總€(gè)頂點(diǎn)計(jì)算一個(gè)新的反射向量Blinn suggested an app
3、roximation using the halfway vector that is more efficient Blinn利用中值(halfway)向量給出了一個(gè)近似,從而使得效率更高6.3.4 Modified Phong Model改進(jìn)的Phong模型(中值向量)h is normalized vector halfway between l and v h是l和v的中值單位向量,即 h = ( l + v ) / | l + v |2= 讀音: varphi phi6.3.4 Modified Phong Model改進(jìn)的Phong模型(中值向量的應(yīng)用)Replace (v r )
4、a by (n h )b用(n h )代替(v r ) b is chosen to match shineness 參數(shù)恰當(dāng)選取,以匹配光潔度Note that halway angle is half of angle between r and v if vectors are coplanar 當(dāng)l, n,v共面時(shí),n和h的夾角-中值角就是r和v的夾角的一半Resulting model is known as the modified Phong or Blinn lighting model 由此得到的模型稱為改進(jìn)的Phong模型或者Blinn光照模型Specified in Op
5、enGL standard在OpenGL標(biāo)準(zhǔn)中定義6.3.4 Modified Phong Model改進(jìn)的Phong模型(示例)Only differences in these teapots are the parameters in the modified Phong model 這些茶壺的差別就在于光照模型中參數(shù)6.4 Computation of Vectors向量的計(jì)算 l and v are specified by the application l和v由應(yīng)用程序指定Can compute r from l and n 可以從l和n計(jì)算rProblem is determi
6、ning n 問(wèn)題就剩下如何確定nFor simple surfaces n can be determined but how we determine n differs depending on underlying representation of surface 對(duì)于簡(jiǎn)單曲面,n可以被確定。但確定的方式要根據(jù)曲面的表示有所不同OpenGL leaves determination of normal to application把法向量的計(jì)算留給應(yīng)用程序例外:Exception for GLU quadrics二次曲面 and Bezier surfaces (Chapter 11
7、)6.4 Computation of Vectors向量的計(jì)算(Plane Normals平面法向)Equation of plane平面方程: ax+by+cz+d = 0plane is determined by three points p0, p2, p3 or normal n and p0 平面可由 三個(gè)不共線點(diǎn)p0, p1, p2 或 法向n與一個(gè)點(diǎn)p0 來(lái)確定Normal can be obtained by法向可由下式得到:n= (p2-p0) (p1-p0)注意叉積的運(yùn)算順序6.4 Computation of Vectors向量的計(jì)算(Normal to Sphere
8、球面法向)Implicit function 隱函數(shù)曲面f(p)=f(x,y.z)=0Normal given by gradient 局部法向可由梯度向量f給出Sphere球面隱方程表示f(p)=pp-1=x2+y2+z2-1=0法向n= f/x,f/y,f/zT=2p 單位化p6.4 Computation of Vectors向量的計(jì)算(Parametric Form參數(shù)形式)For sphere 球心原點(diǎn)單位球面的參數(shù)表示:x=x(u,v)=cos u sin vy=y(u,v)=cos u cos vz= z(u,v)=sin uTangent plane determined by
9、 vectors 點(diǎn)p(u,v)處的切平面由兩個(gè)切方向確定p/u = x/u, y/u, z/uTp/v = x/v, y/v, z/vTNormal given by cross product 局部法向由叉積給出n= p/u p/v = (cos u) p 單位化p6.4 Computation of Vectors向量的計(jì)算(General Case一般情形)We can compute parametric normals for other simple cases我們能計(jì)算其他簡(jiǎn)單參數(shù)曲面的法向,例如Quadrics二次曲面Parameteric polynomial surfac
10、es參數(shù)多邊形曲面Bezier surface patches Bezier曲面片當(dāng)給定一組光源以及視點(diǎn)的位置,并可以計(jì)算出法向量,那么根據(jù)前面的模型可以計(jì)算出每點(diǎn)的顏色但是在每點(diǎn)計(jì)算法向量是相當(dāng)費(fèi)時(shí)的工作幸運(yùn)的是,絕大多數(shù)模型是用平面多邊形網(wǎng)格構(gòu)成的,那么法向的計(jì)算可以大大簡(jiǎn)化6.4 Computation of Vectors向量的計(jì)算(OpenGL法向定義)OpenGL把法向量的計(jì)算留給應(yīng)用程序例外:GLU中的二次曲面和Bzier曲面OpenGL里,頂點(diǎn)法向用如下函數(shù)來(lái)指定和定義 glNormal3f(nx, ny, nz); glNormal3fv(pointer_to_normal)
11、;法向是狀態(tài)值6.5 Polygonal Shanding多邊形網(wǎng)格的明暗處理(OpenGL中明暗處理)Shading calculations are done for each vertexVertex colors e vertex shadesBy default, vertex shades are interpolated across the polygon 缺省情況,光滑(平滑)(顏色插值計(jì)算)著色glShadeModel(GL_SMOOTH);If we use glShadeModel(GL_FLAT); the color at the first vertex will
12、 determine the shade of the whole polygon 單個(gè)多邊形第一個(gè)頂點(diǎn)顏色決定多邊形顏色,均勻著色,平坦(平面)(均勻)6.5.1 Flat shading均勻明暗處理在同一多邊形上法向n為常向量視點(diǎn)在無(wú)窮遠(yuǎn),視點(diǎn)方向v是常向量光源在無(wú)窮遠(yuǎn),入射方向l也是常向量從而對(duì)于每個(gè)多邊形,只需要計(jì)算其上一點(diǎn)的顏色,其它點(diǎn)的顏色與它相同6.5.1 Flat shading均勻明暗處理(OpenGL均勻明暗處理)OpenGL里,下面函數(shù)定義平面明暗處理效果 glShadeModel(GL_FLAT);OpenGL如何選 代表多邊形的法向或顏色的頂點(diǎn)單個(gè)多邊形(GL_POL
13、YGON) 選第1個(gè)頂點(diǎn)獨(dú)立三角形(GL_TRIANGLES) 選第3i個(gè)頂點(diǎn)獨(dú)立四邊形(GL_QUADS) 選第4i個(gè)頂點(diǎn)四邊形帶(GL_QUAD_STRIP) 選第2i+2個(gè)頂點(diǎn)三角形帶(GL_TRAINGLE_STRIP ) 或 三角形扇(GL_TRAINGLE_FAN) 選第i+2個(gè)頂點(diǎn)6.5.1 Flat shading均勻明暗處理(特點(diǎn))網(wǎng)格中每個(gè)多邊形的顏色不同如果多邊形網(wǎng)格表示的是一個(gè)光滑曲面,那么這種效果顯然是不令人滿意的6.5.1 Flat shading均勻明暗處理(人類視覺(jué)系統(tǒng))人類視覺(jué)系統(tǒng)對(duì)光強(qiáng)的變化非常敏感稱為旁側(cè)抑制特性(lateral inhibition )觀
14、察到下圖邊界上的條狀效果,稱為Mach帶(Mach bands)沒(méi)有辦法避免這種情形,只有給出比較光滑的明暗處理方法6.5.2 Gouraud (平滑)明暗處理方法(Polygon Normals多邊形法向量)Polygons have a single normal在多邊形網(wǎng)格中每個(gè)多邊形為平面,那么存在唯一的法向量,使得明暗效果過(guò)于平坦Shades at the vertices as computed by the Phong model can be almost same 基于Phong光照模型所計(jì)算(包括線性插值之后)各點(diǎn)結(jié)果相同Identical for a distant vi
15、ewer (default) or if there is no specular component 在遠(yuǎn)距離觀察和無(wú)鏡面光源的情況下沒(méi)有區(qū)別Consider model of sphere例如球體Want different normals at each vertex even though this concept is not quite correct mathematically希望在每個(gè)頂點(diǎn)處具有不同的法向量,這個(gè)概念在數(shù)學(xué)上不太“正確”6.5.2 Gouraud (平滑)明暗處理方法We can set a new normal at each vertex頂點(diǎn)法向的新計(jì)算方
16、法Easy for sphere model If centered at origin n = p Now smooth shading worksNote silhouette edge注意輪廓線處的結(jié)果6.5.2 Gouraud (平滑)明暗處理方法(如何計(jì)算)在網(wǎng)格中每個(gè)頂點(diǎn)處有幾個(gè)多邊形交于該點(diǎn),每個(gè)多邊形有一個(gè)法向,取這幾個(gè)法向的平均化得到該點(diǎn)的法向然后利用簡(jiǎn)單光照模型計(jì)算出頂點(diǎn)的顏色對(duì)于多邊形內(nèi)的點(diǎn),采用線性插值確定顏色OpenGL中設(shè)置光滑明暗處理 glShadeModel(GL_SMOOTH);6.5.2 Gouraud (平滑)明暗處理方法(如何確定法向?)如何找出與某個(gè)頂
17、點(diǎn)相鄰的各多邊形?如果程序中只是列出各頂點(diǎn),那么沒(méi)有信息找到上述多邊形如右所示數(shù)據(jù)結(jié)果卻可以做到這一點(diǎn)6.5.3 Phong明暗處理方法與Gouraud方法不同,Phong方法是根據(jù)每個(gè)頂點(diǎn)的法向,插值出多邊形內(nèi)部各點(diǎn)的法向,然后基于光照模型計(jì)算出各點(diǎn)的顏色6.5.3 Phong明暗處理方法(特點(diǎn))通常會(huì)有效地降低Mach帶效應(yīng)法向是局部的,法向插值之后,平面看起來(lái)像曲面得到的圖形比應(yīng)用Gouraud方法的結(jié)果更光滑能夠反應(yīng)高亮效果但是由于法向的計(jì)算還是很復(fù)雜,一般無(wú)法得到實(shí)時(shí)圖形所花費(fèi)時(shí)間通常是Gouraud方法的6到8倍Per-fragment shading片元著色離線 或者 依賴高級(jí)硬
18、件OpenGL實(shí)現(xiàn)的是Gouraud方法明暗處理方法對(duì)比-1Gouraud v.s. Phong ShadingGouraud ShadingFind average normal at each vertex (vertex normals)Apply modified Phong model at each vertexInterpolate vertex shades across each polygonPhong shadingFind vertex normalsInterpolate vertex normals across edgesInterpolate edge normals across polygonApply modified Phong
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 刮膠合同范例
- 2025年安徽省安全員-A證考試題庫(kù)及答案
- 乙方解除運(yùn)輸合同范本
- 2025海南省安全員知識(shí)題庫(kù)及答案
- 農(nóng)村庫(kù)房建房合同范本
- 二年級(jí)口算題目總匯100道
- 三年級(jí)口算題目匯編1000道
- https證書(shū)合同范本
- 包車帶司機(jī) 合同范本
- 書(shū)籍編撰出版合同范本
- 海南紅色拓展培訓(xùn)方案
- 鎂合金汽車輪轂的研究與開(kāi)發(fā)
- 新能源船舶動(dòng)力系統(tǒng)的工程實(shí)踐
- SHAFER氣液聯(lián)動(dòng)執(zhí)行機(jī)構(gòu)培訓(xùn)
- 小學(xué)生守則、日常行為規(guī)范教育實(shí)施方案
- 湖南省六年級(jí)上冊(cè)數(shù)學(xué)期末試卷(含答案)
- 部編版小學(xué)六年級(jí)道德與法治下冊(cè)課堂達(dá)標(biāo)檢測(cè)試卷全冊(cè)含答案
- 巖土工程中的非線性問(wèn)題分析
- 他們創(chuàng)造了數(shù)學(xué):50位著名數(shù)學(xué)家的故事
- 《普洱茶的定義》課件
- 2023山東經(jīng)貿(mào)職業(yè)學(xué)院教師招聘考試真題題庫(kù)
評(píng)論
0/150
提交評(píng)論