九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

清華大學(xué)DirectX游戲編程第3章(全20章)

  • 資源ID:247454526       資源大小:1.13MB        全文頁數(shù):26頁
  • 資源格式: PPT        下載積分:15積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要15積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

清華大學(xué)DirectX游戲編程第3章(全20章)

單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級二級二級二級二級二級二級二級二級二級二級,第三級,第四級,第五級,*,第,3,章 渲染管道,本章的主題是渲染管道。渲染管道主要用于創(chuàng)建一個二維圖像,該二維圖像是通過在指定位置設(shè)置的虛擬攝像機(jī)可以觀察到的三維世界中物體的影像。,主要目標(biāo):,學(xué)習(xí)怎樣在,Direct3D,中描述三維物體。,學(xué)習(xí)怎樣設(shè)置虛擬攝像機(jī)。,理解渲染管道,利用幾何方法描述三維場景的步驟以及怎樣獲得用于描述三維場景的二維圖像。,2,3.1,描述的模型,一個場景是由物體或者模型所組成的。物體可以通過三角形網(wǎng)格進(jìn)行近似的描述,如圖,3.2,所示。,網(wǎng)格中的三角形是物體的基本組成部分。,一個多邊形的兩條邊的相交點(diǎn)是多邊形的頂點(diǎn),可以通過指定三角形的三個頂點(diǎn)來描述三角形,(,見圖,3.3),。描述一個物體的時候,只需要指定構(gòu)成物體的那些三角形。,3,3.1.1,頂點(diǎn)格式,在,Direct3D,中,頂點(diǎn)可以擁有顏色屬性以及法線向量屬性,創(chuàng)建一個自定義的頂點(diǎn)格式,首先需要創(chuàng)建一個頂點(diǎn)數(shù)據(jù)結(jié)構(gòu),用于保存頂點(diǎn)數(shù)據(jù)。,例如,下面這段代碼中定義了兩種不同的頂點(diǎn)格式,一種頂點(diǎn)格式保存了位置和顏色信息,另一種頂點(diǎn)格式保存位置、法向量以及紋理坐標(biāo)信息:,參見教材,P59,4,3.1.1,頂點(diǎn)格式,定義完頂點(diǎn)結(jié)構(gòu)后,需要使用靈活頂點(diǎn)格式,(FVF),標(biāo)志來描述頂點(diǎn)的組成格式。例如對于前面定義的頂點(diǎn)結(jié)構(gòu)可以通過如下的靈活頂點(diǎn)格式進(jìn)行描述。,(1),要描述包含位置屬性和散射顏色屬性的頂點(diǎn)結(jié)構(gòu)時,靈活頂點(diǎn)格式標(biāo)志為:,#define FVF_COLOR (D3DFVF_XYZ | D3DFVF_DIFFUSE),(2),描述包含位置屬性、法向量屬性以及紋理坐標(biāo)屬性的頂點(diǎn)結(jié)構(gòu)時,靈活頂點(diǎn)格式標(biāo)志為:,#define FVF_NORMAL_TEX (D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1),5,3.1.2,三角形,三角形是構(gòu)成三維模型的基本元素。通過創(chuàng)建三角形的列表來描述物體的形狀和輪廓來構(gòu)建一個物體。,三角形列表中包含了每個需要渲染的三角形的數(shù)據(jù)。,例如,如果需要構(gòu)建一個矩形,可以將矩形分成兩個三角形,并且指定所有三角形的頂點(diǎn),(,見圖,3.4),:,Vertex rect6 = v0, v1, v2, /,三角形,0,v0, v2, v3; /,三角形,1,6,3.1.3,索引,通常組成三維物體的三角形都會使用許多相同的頂點(diǎn),如圖,3.4,中的矩形所示。,如在圖,3.5,中,該立方體有,8,個獨(dú)立頂點(diǎn),但是其中有許多頂點(diǎn)將在構(gòu)建立方體的不同三角形中被重復(fù)使用。,7,3.1.3,索引,索引的工作原理是:在創(chuàng)建一個頂點(diǎn)列表的同時創(chuàng)建一個索引列表。頂點(diǎn)列表中存儲了所有獨(dú)立頂點(diǎn)的數(shù)據(jù),索引列表中存儲所有三角形的頂點(diǎn)對應(yīng)獨(dú)立頂點(diǎn)數(shù)據(jù)在頂點(diǎn)列表中的索引。,在索引列表中通過不同的索引來定義頂點(diǎn)如何組合以組成三角形:,WORD indexList6 = 0, 1, 2, /,三角形,0,0, 2, 3; /,三角形,1,8,3.2,虛擬攝像機(jī),圖,3.6,展示了空間中的攝像機(jī)以及攝像機(jī)的拍攝范圍。,攝像機(jī)可見的體積范圍是一個平截臺體,由視角范圍、近平面和遠(yuǎn)平面來決定。,投影窗口是個二維的區(qū)域,平截臺體內(nèi)的三維幾何體都將投影到這個二維窗口上,從而生成一個代表三維世界的二維圖像。投影窗口被定義在最小值為,(-1,,,-1),到最大值,(1,,,1),范圍之間,這一點(diǎn)是非常重要的。,9,3.3,渲 染 管 道,圖,3.7,提供了對渲染管道的簡單描述,渲染管道中的很多步驟中,都要將幾何物體從一個坐標(biāo)系中變換到另一個坐標(biāo)系中去。這些變換都通過矩陣來完成。,例如,在圖,3.7,中,如果需要設(shè)置一個從本地空間向世界空間的變換,可以進(jìn)行如下設(shè)置:,Device->SetTransform(D3DTS_WORLD, &,worldMatrix,);,10,3.3.1,本地空間,本地空間,(,或者稱為模型空間,),指定義組成物體的三角形列表時所使用的坐標(biāo)系統(tǒng)。本地空間在簡化模型處理工作上是相當(dāng)有用的。,在模型的本地空間中創(chuàng)建模型比在世界空間中創(chuàng)建模型要簡單些。,比如,本地空間中創(chuàng)建物體時,不需要考慮物體的位置、大小以及與世界空間中其他物體的關(guān)系。,11,3.3.2,世界空間,將本地空間的物體變換到世界空間需要進(jìn)行的一系列變換,這被稱為世界變換,這些變換包括平移操作、旋轉(zhuǎn)操作以及縮放操作,分別用于設(shè)置模型在世界坐標(biāo)系中的位置、方向以及大小。,世界變換完成世界空間中所有物體位置,包括大小、方向,以及相互之間關(guān)系的設(shè)置。,世界變換用矩陣來表示,在,Direct3D,中用,IDirect3DDevice9:SetTransform,方法來設(shè)置世界變換矩陣,調(diào)用,SetTransform,方法時需要設(shè)置參數(shù),1,的變換類型為,D3DTS_WORLD,。,12,3.3.2,世界空間,對于本地坐標(biāo)系和世界坐標(biāo)系概念的理解,可進(jìn)一步參考圖,3.8,、,3.9,。,13,3.3.3,視圖空間,在世界空間中,幾何物體和攝像機(jī)都是相對于世界坐標(biāo)系來定義的,如圖,3.10,所示。,14,3.3.3,視圖空間,視圖空間變換矩陣可以通過以下的,D3DX,函數(shù)來計算:,D3DXMATRIX* D3DXMatrixLookAtLH(,D3DXMATRIX *,pOut, /,指向視圖矩陣的指針,CONST D3DXVECTOR3 *,pEye, /,攝像機(jī)在世界坐標(biāo)系中的位置,CONST D3DXVECTOR3 *,pAt, /,攝像機(jī)的觀察點(diǎn),CONST D3DXVECTOR3 *,pUp,/,攝像機(jī)的向上向量,);,15,3.3.4,背面裁剪,圖,3.11,展示了視圖空間中的一個物體,組成物體的多邊形的前表面都有一個箭頭。前表面面對著攝像機(jī)的多邊形叫做前向多邊形,前表面背向攝像機(jī)的表面叫做背向多邊形。,圖,3.12,展示了背面裁剪后的同一個物體。但是從攝像機(jī)角度來看,渲染出來的還是相同的場景,因為在各種情況下都是看不見后表面的。,16,3.3.4,背面裁剪,默認(rèn)情況下,,Direct3D,定義頂點(diǎn)按照順時針方式排列,(,在視圖空間中,),的三角形為前向多邊形,逆時針排列,(,在視圖空間中,),的作為背向多邊形。,如果因為某些原因需要不使用默認(rèn)的裁剪方法,就可以通過改變,D3DRS_CULLMODE,渲染狀態(tài)來改變裁剪方法:,Device->SetRenderState(D3DRS_CULLMODE, Value);,這里的參數(shù),Value,可以為以下值:,D3DCULL_NONE,不進(jìn)行背面裁剪。,D3DCULL_CW,裁剪頂點(diǎn)按照順時針描述的三角形。,D3DCULL_CCW,裁剪頂點(diǎn)按照逆時針描述的三角形。,17,3.3.5,光照,光源是在世界空間中定義的,但是經(jīng)過視圖空間變換后,光源就變換到視圖空間中。在視圖空間中,光源可以用來照亮場景中的物體,這樣場景看起來就更加真實。,如何設(shè)置固定渲染管道的光照將在后面講述。,18,3.3.6,裁剪,需要剔除處于可視范圍以外的物體,這種操作稱為裁剪。一個三角形相對于表示可視范圍的平截臺體可能具有,3,種不同的位置:,完全在可視范圍內(nèi),完全在可視范圍外,部分處于可視范圍內(nèi),(,部分處于可視范圍外,19,3.3.6,裁剪,圖,3.13,展示了這,3,種情況。,20,3.3.7,投影,在視圖空間中,要使用二維的形式來描述三維場景,將,n,維變換為,n-1,維的過程被稱為投影。,圖,3.14,中展示了將三維空間的一個點(diǎn)透視投影到投影窗口中的情形。,21,3.3.7,投影變換定義了可見范圍,(,平截臺體,),并且負(fù)責(zé)把可視范圍中的幾何物體投影到投影窗口中。,在,Direct3D,中使用下面的函數(shù),就可以得到一個使用平截臺體進(jìn)行描述的投影矩陣,(,參考圖,3.15),:,22,3.3.8,視口變換,視口變換負(fù)責(zé)將物體從投影窗口坐標(biāo)系變換到屏幕上的矩形區(qū)域,這個矩形就是視口。,圖,3.16,展示了一個視口矩形。,23,3.3.8,視口變換,在,Direct3D,中,使用,D3DVIEWPORT9,結(jié)構(gòu)來描述視口,該結(jié)構(gòu)的定義如下:,typedef,struct,_D3DVIEWPORT9 ,DWORD X;,DWORD Y;,DWORD Width;,DWORD Height;,DWORD,MinZ,;,DWORD,MaxZ,;, D3DVIEWPORT9;,24,3.3.9,光柵化,光柵化所做的工作就是計算每個獨(dú)立像素點(diǎn)的顏色值,(,見圖,3.17),。,25,3.4,小 結(jié),三維物體使用三角形網(wǎng)格進(jìn)行描述,三角形網(wǎng)格是一個三角形的列表,這些三角形組成一個與原來物體形狀輪廓相似的三維圖形。,虛擬攝像機(jī)的可視范圍被設(shè)置為一個平截臺體,平截臺體的范圍就是攝像機(jī)可視范圍。,三維物體在本地坐標(biāo)系中定義,在進(jìn)行變換時,幾何物體首先被變換到一個世界空間中,為了方便進(jìn)行投影、裁剪以及其他操作,物體將被變換到視圖空間中,視圖空間中攝像機(jī)處于坐標(biāo)系的原點(diǎn),觀察方向為,Z,軸的正方向。,最后,視口變換將幾何物體從投影窗口變換到視口中。最后通過光柵化,計算所有獨(dú)立像素點(diǎn)的顏色值,得到一張描述三維世界的二維圖片。,26,

注意事項

本文(清華大學(xué)DirectX游戲編程第3章(全20章))為本站會員(fgh****35)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!