freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于directx的第一人稱射擊游戲制作畢業(yè)論文(編輯修改稿)

2025-07-19 01:03 本頁面
 

【文章內(nèi)容簡介】 就可通過簡單的平移計(jì)算轉(zhuǎn)換為世界坐標(biāo)系下的坐標(biāo)。這里,局部坐標(biāo)系和世界坐標(biāo)系不可以脫離開來理解,否則這個(gè)局部坐標(biāo)系的點(diǎn)坐標(biāo)無法準(zhǔn)確地用統(tǒng)一的坐標(biāo)系(世界坐標(biāo)系)的坐標(biāo)值來表示。三角形面的頂點(diǎn)(x,y,z)坐標(biāo)值已成功解決了 3D物體表面的位置定位問題,要保存 3D物體的顏色值等頂點(diǎn)信息可用 VC++語言的結(jié)構(gòu)體來表示。當(dāng)頂點(diǎn)的顏色值確定以后,三角形面的內(nèi)部點(diǎn)的顏色值就可以通過某種插值方法計(jì)算出來,從而整個(gè) 3D物體表面上的點(diǎn)的顏色值也就確定下來了。此外,考慮到光照對 3D物體表面顏色的影響,通常需要根據(jù)具體的三角形面的頂點(diǎn)坐標(biāo)數(shù)據(jù),計(jì)算出頂點(diǎn)處的法向量。因?yàn)橐粋€(gè)頂點(diǎn)往往是多個(gè)鄰接三角形面的公共交點(diǎn),因此,頂點(diǎn)處的法向量通常是一個(gè)平均法向量。北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)8把頂點(diǎn)的法向量和光線的方向向量作某種數(shù)學(xué)運(yùn)算,就可修正該頂點(diǎn)光源貢獻(xiàn)的實(shí)際顏色值。由此,頂點(diǎn)的結(jié)構(gòu)體必須添加一個(gè)反映其上法向量的變量域。這一步通常需要將網(wǎng)絡(luò)化的 3D物體從各自的局部坐標(biāo)系中放入同一個(gè)世界坐標(biāo)系中,并通過相應(yīng)的數(shù)學(xué)計(jì)算(平移變換)得出 3D物體在世界坐標(biāo)系中的頂點(diǎn)坐標(biāo),并按光照模型計(jì)算出每個(gè)頂點(diǎn)的顏色值。從以上的討論很自然地引出如下的幾個(gè)待解決的 3D數(shù)學(xué)問題:平移坐標(biāo)變換的坐標(biāo)計(jì)算問題。已知點(diǎn)在一個(gè)坐標(biāo)系下的坐標(biāo)值,計(jì)算在另一個(gè)平移坐標(biāo)系下的新坐標(biāo)。法向量的計(jì)算,如何根據(jù)已知的三個(gè)點(diǎn)坐標(biāo),計(jì)算出所在平面的法向量。點(diǎn)和向量的統(tǒng)一表示,尋找一種可以統(tǒng)一三維空間中點(diǎn)和向量的表示方法,使得點(diǎn)和向量的坐標(biāo)計(jì)算在形式上能統(tǒng)一起來,并且保證運(yùn)算上的形式簡潔。 攝影坐標(biāo)系三維場景的空間范圍可以是無限的,計(jì)算機(jī)屏幕的大小卻是有限的。因而不可能,也不需要把三維場景中的物體同時(shí)在有限的屏幕上全部顯示出來。這就要求對三維場景進(jìn)行必要的可視范圍的選擇。顯然這是符合人對周圍環(huán)境觀察特性的,不同角度、不同距離看同一景致,會產(chǎn)生不同的視覺圖像。于是,就有必要在世界坐標(biāo)系中引入一個(gè)觀察者來確定當(dāng)前哪些場景物體應(yīng)該被顯示出來。這個(gè)觀察者也可以理解為照相機(jī)或攝影機(jī)。觀察者可由世界坐標(biāo)系中的一個(gè)點(diǎn)和一個(gè)指示觀察方向的向量來決定。如圖世界坐標(biāo)系局部坐標(biāo)系 2局部坐標(biāo)系 1圖 世界坐標(biāo)系與局部坐標(biāo)系的關(guān)系 圖 頂點(diǎn)的法向量北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)9。觀察者及其觀察方向圖 世界坐標(biāo)系下的觀察者位置及觀察方向從觀察者位置出主,沿著視線的觀察方向可構(gòu)造一個(gè)棱錐體的視覺區(qū)域,此時(shí),再通過一個(gè)遠(yuǎn)平面和一個(gè)近平面進(jìn)行截割,形成一個(gè)去除了錐頭的棱臺體,這個(gè)棱臺體就是觀察進(jìn)的可見區(qū)域范圍。如圖 ,其中遠(yuǎn)平面和近平面又稱為遠(yuǎn)視截圖和近視截圖。而棱臺體又稱為視截體。遠(yuǎn)視截面近視截面觀察者圖 決定觀察可風(fēng)區(qū)域的視截體垂直視角 a除了遠(yuǎn)、近兩個(gè)視截面限制了可見范圍的縱深外,還需要利用視域的垂直視角a來限制在垂直方向上張開的視角區(qū)域大小。至于視域的寬度限制則不使用角度來說明,而是采用任一截平面的寬高比率 Aspect來指定。為了不使透視投影后的圖像在計(jì)算機(jī)屏幕上顯示時(shí)產(chǎn)生比例失真,Aspect 一般取值為屏幕的寬高比,即Aspect=顯示器屏幕寬度/顯示器屏幕高度。視截體確定以后,下一步就要對三維物體的哪些三角形面需要顯示出來或部分顯示出來,哪些三角形面由于位于視截體外而不需要進(jìn)行顯示進(jìn)行計(jì)算分析,這個(gè)過程稱為三維剪裁。北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)10為了方便三維剪裁的處理,首先需要對視截體的 6個(gè)面(左側(cè)面、右側(cè)面、頂面、底面、近視截面和遠(yuǎn)視截面)的坐標(biāo)方程進(jìn)行簡化。為此,在觀察者處建立一個(gè)所謂的攝影坐標(biāo)系,并使其 z軸方向指向觀察方向,如圖 。xyz圖 攝影坐標(biāo)系在攝影坐標(biāo)系下,左側(cè)面、右側(cè)面、頂面和底面由于都經(jīng)這坐標(biāo)原點(diǎn),因此它們的坐標(biāo)方程都簡化為一個(gè)齊次方程(如 ax+by+c=0) ,而近視和遠(yuǎn)視截面的方程式更簡單,為 z=n和 z=f的形式,這也是選擇 z軸指向觀察方向的原因。這里,自然也會提出如下 4個(gè) 3D數(shù)學(xué)問題:如何從數(shù)學(xué)上描述攝影坐標(biāo)系與世界坐標(biāo)系的關(guān)系。已知的世界坐標(biāo)系下的點(diǎn)的坐標(biāo)在攝影坐標(biāo)系下的坐標(biāo)值應(yīng)如何計(jì)算出來。已知在攝影坐標(biāo)系下的視截體的 6個(gè)面的方程式,如何逆向計(jì)算出這些面在世界坐標(biāo)系下的方程。在攝影坐標(biāo)系下,如何將 6個(gè)視截體的面的法向量計(jì)算出來。 剪裁和透視投影三維視截體的剪裁并不是獨(dú)立進(jìn)行的,而是結(jié)合透視投影來進(jìn)行的。透視投影就是將三維物體按照透視幾何的方法投影到一個(gè)平面上,從而實(shí)現(xiàn)三維圖形到二維圖形的轉(zhuǎn)化。例如,在 z=1的位置上,可建立一個(gè)投影窗口,對于視截體內(nèi)的任一點(diǎn) P,它的透視投影對應(yīng)點(diǎn) P’為 OP線段與投影窗口的交點(diǎn),如圖 6所示。北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)11遠(yuǎn)視截面近視截面觀察者 O圖 投影窗口和透視投影投影窗口 z=1xyzPP’從幾何特性看,對于同等大小的物體(如三角形面) ,透視投影把更遠(yuǎn)處的物體投影得更小,即具有“近大遠(yuǎn)小”的特別,完全符合人的視覺感受。顯然,透視投影只需要對那些們于視截體內(nèi)的三角形面的頂點(diǎn)進(jìn)行投影,這意味著投影前要對頂點(diǎn)是否位于視截體內(nèi)進(jìn)行判斷,即進(jìn)行剪裁處理,以減少不必要的計(jì)算。只有位于視截體內(nèi)未被剪裁掉的頂點(diǎn)才進(jìn)行透視投影。為了簡化剪裁的判斷處理,實(shí)際并不采用圖 ,而是尋找一個(gè)具有透視投影性質(zhì),同時(shí)又可將視截體轉(zhuǎn)換為立方體的變換,從而使頂點(diǎn)是否在視截體內(nèi)的判斷,變?yōu)轫旤c(diǎn)的坐標(biāo)分量 x、y 和 z是否分別介于區(qū)間[1,1]、[-1,0]和[0,1]的判斷。滿足這種性質(zhì)的變換又稱為齊次投影剪裁變換。以二維剪裁為例(不難推廣到三維情形) ,如圖 ,假設(shè)剪裁區(qū)域由一個(gè)正方形來決定,圖中有 3個(gè)三角形,最左側(cè)的三角形 3個(gè)頂點(diǎn)都位于正方形內(nèi),因此這個(gè)三角形應(yīng)該被顯示出來。而最右側(cè)的三角形頂點(diǎn)均不在正方形內(nèi),因此被剪裁掉不顯示。中間的三角形部分位于正方形區(qū)域內(nèi)(1 個(gè)頂點(diǎn)在正方形內(nèi),2 個(gè)頂點(diǎn)在外) ,因此通過求交取得三角形邊與正方形右邊線段交戰(zhàn),從而確定出新的三角形 ABC被顯示到屏幕上。北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)12ABC圖 二維剪裁由于上面的剪裁區(qū)域?yàn)橐粋€(gè)規(guī)則的矩形,因此點(diǎn)是否落在矩形內(nèi)是很容易判斷的。相反,如果直接以攝影空間中的視截體為剪裁區(qū)域,那么必須計(jì)算棱臺 6個(gè)面的法向量,然后通過點(diǎn)向量與法向量的點(diǎn)積運(yùn)算結(jié)果(正數(shù)或負(fù)數(shù))來判斷點(diǎn)在棱臺內(nèi)或棱臺外。因此,將視截體棱臺轉(zhuǎn)制為立方體對于剪裁處理是十分必要的。當(dāng)便于剪裁處理的透視投影變換選定后,就可以攝影空間中三維物體的各個(gè)微分三角形面頂點(diǎn)坐標(biāo)進(jìn)行投影變換計(jì)算,得到每個(gè)頂點(diǎn)的新坐標(biāo)值 ,其中)39。,39。(zyx。這樣集合]1,0[39。],[39。],1[39。 ???zyx可表示出頂點(diǎn)在平面上投影情況,而})(|)39。{ 標(biāo)為 透 視 投 影 后 的 頂 點(diǎn) 坐仍可反映出頂點(diǎn)的縱深度。為了更直觀地看待這個(gè)可將視截體轉(zhuǎn)換為立方體的透39。z視投影的作用,可想象在攝影空間的三維物體的頂點(diǎn)都被投影到一個(gè) 平面上xOy(可理解為投影窗口) ,它的頂點(diǎn)坐標(biāo)可從上同的 獲得,而在每個(gè)投影頂點(diǎn))39。,(yx都關(guān)聯(lián)著一個(gè)表示原來頂點(diǎn)的縱深度的 坐標(biāo)值。z 3D 游戲技術(shù)數(shù)學(xué)基礎(chǔ)三維物體從取景到投影,需要經(jīng)過一系列的坐標(biāo),才能生成二維的圖形數(shù)據(jù)加以顯示。因此,變換后的坐標(biāo)計(jì)算就成了三維圖形淡定中的一個(gè)基本數(shù)學(xué)問題。例如,三角形面的頂點(diǎn)的坐標(biāo)變換計(jì)算、三角形面的法向量的變換計(jì)算以及視截體的平面方程的計(jì)算等。在三維圖形開發(fā)中,三維的點(diǎn)和向量實(shí)際是采用四維向量或 來統(tǒng)一處理的,這樣,才可以將各種變換的式子用齊次的矩陣)1,(zyx)0,(zyx形式表示出來。下面除了要介紹向量和矩陣的基本數(shù)學(xué)運(yùn)算外,還將具體計(jì)算坐標(biāo)系的平衡、縮放和旋轉(zhuǎn)變換的矩陣。北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)13 向量在物理學(xué)的研究中,一些既有大小,又有方向的量,如力、速度等物理量,用一條有方向的線段(有向線段)來表示。這個(gè)有向線段就是向量,又稱為矢量。雖然向量是一個(gè)與坐標(biāo)系無關(guān)的幾何量,但是可以引入坐標(biāo)系來加以研究。如果將方向相同、大小相等的向量定義為相等的向量,那么可將向量的起始點(diǎn)移到原點(diǎn)處,其箭頭所在的端點(diǎn)的坐標(biāo) 或三維坐標(biāo)系下的 將與向量一一對應(yīng),),(yx),(zyx從而在坐標(biāo)系下的向量可用一組標(biāo)量坐標(biāo)值 或 給出,實(shí)現(xiàn)了向量由形),(yx,到數(shù)的轉(zhuǎn)變。向量的坐標(biāo)表示對于游戲開發(fā)來說是必需的,在世界坐標(biāo)系下或攝影坐標(biāo)系下的三角形面的法線、光線的方向和觀察者的方向等都是通過向量的坐標(biāo)形式來準(zhǔn)確給出的。甚至還要根據(jù)真實(shí)空間(二維或三維)的特性,從已知的向量出發(fā)計(jì)算某一新向量的各個(gè)坐標(biāo)值。 矩陣在線性方程組的求解上,變元較少的方程組(如僅有兩個(gè)未知數(shù) 和 的方程組)xy的解很容易表達(dá)出來,但是推廣到較為復(fù)雜的更多變元的情形,如何推測方程組的解以及如何用的式子表達(dá)出來,引發(fā)了對行列式的提出和研究。行列式實(shí)質(zhì)上是方陣數(shù)據(jù)的一種運(yùn)算,由此自然地想到,可對一般陣列數(shù)據(jù)定義代數(shù)運(yùn)算,就像對向量定義運(yùn)算一樣。這樣是矩陣運(yùn)算的產(chǎn)生歷史。矩陣的出現(xiàn)使得方程組的求解可用矩陣的運(yùn)算來演繹,求解過程更為簡潔。矩陣的另一個(gè)常見應(yīng)用就是用來表示坐標(biāo)系平移、旋轉(zhuǎn)變換后,點(diǎn)或向量的新舊坐標(biāo)對應(yīng)關(guān)系。這就是矩陣對3D開發(fā)的關(guān)鍵所在,因?yàn)殚_發(fā)中往往涉及到世界坐標(biāo)系、攝影坐標(biāo)系和投影坐標(biāo)系之間的坐標(biāo)變換計(jì)算。 坐標(biāo)變換坐標(biāo)變換可以用兩種不同觀點(diǎn)去理解。以幾何點(diǎn)的坐標(biāo)變換為例,一種觀點(diǎn)是保持幾何點(diǎn)空間位置不變,在空間中建立新的坐標(biāo)系(例如將原來的坐標(biāo)系平行移動到新的位置),要求計(jì)算出該點(diǎn)在新坐標(biāo)系的坐標(biāo)。另一種觀點(diǎn)是保持坐標(biāo)系不變,幾何點(diǎn)移動到新的位置處,要求計(jì)算新位置處幾何點(diǎn)的坐標(biāo)。兩種觀點(diǎn)在不同的應(yīng)用場合各有方便之處。在世界坐標(biāo)系已知的情況下,建立攝影坐標(biāo)系,以簡化北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)14視截體的平面方程,又或利用透視投影變換將三維的圖形數(shù)據(jù)轉(zhuǎn)換為二維的圖形數(shù)據(jù),都是涉及到新、舊兩個(gè)坐標(biāo)系的轉(zhuǎn)換,此時(shí)采用坐標(biāo)系變換的第一種觀點(diǎn)去理解比較適合;當(dāng)3D游戲中的精靈在三維場景中移動時(shí),則采用點(diǎn)移動的第二種比較適于思考。下面將結(jié)合以上兩種觀點(diǎn)來介紹平移、縮放和旋轉(zhuǎn)這3個(gè)最基本的變換。(一)平移變換考慮某一坐標(biāo)系 下的任意一點(diǎn) ,在坐標(biāo)系中任選一點(diǎn)xyz),(zyxP?,建立一個(gè)新的坐標(biāo)系 , 各坐標(biāo)軸正向平行于 軸。)39。,39。(39。 zyxO? 39。39。 xyz現(xiàn)在需要求出點(diǎn) 在新坐標(biāo)系 下的坐標(biāo) 。P39。z)39。,(zyx,構(gòu)造3個(gè)向量來推導(dǎo)出點(diǎn) 在 下的坐標(biāo) 。由空39。z)39。,39。(zyxP?間幾何的向量性質(zhì)得式(21):(21)OP??39。圖 平移坐標(biāo)變換O’O xx’yy’zz’P從而,展開向量的坐標(biāo)分量取得如下的方程組(22):(22)??????zzyyxxPO39。39。39。39。39。于是, , 。PO??39。 39。39。?由此可以看到,坐標(biāo)系 可看成是坐標(biāo)系 平行移動而來的,其中 軸方y(tǒng)xxyx向平移 單位, 軸方向平移 單位, 軸方向平移 單位。在這種坐標(biāo)系的平x39。y39。zzO39。移變換下,點(diǎn)的坐標(biāo)變換關(guān)系工是將相應(yīng)的 、 和 坐標(biāo)值減少對應(yīng)的平移單位北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)15大小。再考慮在 中選定一點(diǎn) ,建立另一個(gè)平移坐標(biāo)系 ,39。zyx )39。,39。39。(zyxO39。39。zyx那么點(diǎn) 在這個(gè) 下的坐標(biāo) 滿足式 (23):P39。39。39。P(23)39。39。P??這里, , 。),(39。39。39。39。zyx?)39。,39。(zyx顯然,以上變換式子還需要進(jìn)一步轉(zhuǎn)換為關(guān)于 和 的齊次等式來表示,39。(P才可以簡化連續(xù)多個(gè)變換(包括將要介紹的旋轉(zhuǎn)變換)下的坐標(biāo)關(guān)系式。可以利用矩陣將此等式構(gòu)造出來。為此,先將點(diǎn) 與一個(gè)四維向量 一一對應(yīng)起來,然后,),(zyxP)1,(zyx可根據(jù) 等式建立如下等價(jià)的齊次關(guān)系等式(24)。39。39。OP??(24)?????????139。39。39。 001),()1,(39。39。39。 zyxzyxzyx Q等式右邊的矩陣稱為平移變換矩陣,它由坐標(biāo)系平移到點(diǎn) 的坐標(biāo)值來決定,39。可簡單表示為 ,如式 (25)。)39。(QT(25)?????????139。39。39。 001)39。( zyxQ三維向量和三維的點(diǎn)都可以用四維向量統(tǒng)一表示出來。四維向量的第4個(gè)分量又稱為齊次坐標(biāo),四維向量的空間則稱為齊次空間。以上平移坐標(biāo)變換,是計(jì)算原有坐標(biāo)系中的點(diǎn)和向量在新坐標(biāo)系中的坐標(biāo)。如果采用同一個(gè)坐標(biāo)系下,點(diǎn)或向量的平行移動觀點(diǎn)去理解平移變換,即一個(gè)點(diǎn)或向量(隨著坐標(biāo)軸)平行移動到一個(gè)新的位置,要求計(jì)算該點(diǎn)或向量的新坐標(biāo)值,那么相當(dāng)于求出在原坐標(biāo)系中的坐標(biāo)。因此,平移后的點(diǎn)或向量的坐標(biāo)值將使用如下的矩陣來計(jì)算(相差一個(gè)負(fù)號) 。如式(26)。 (26)???????139。39。39。 001)39。(zyxQT北京郵電大學(xué)世紀(jì)學(xué)院畢業(yè)設(shè)計(jì)(論文)16上面的矩陣就是DirectX平移變換所使用的矩陣。通常三維物體已在它的局部坐標(biāo)系中建立了各個(gè)頂點(diǎn)的坐標(biāo),繪制該三維物體時(shí),需要先移入世界坐標(biāo)系中。此時(shí),可想象該三維物體的局部坐標(biāo)系的原
點(diǎn)擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1