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

正文內(nèi)容

基于directx的第一人稱射擊游戲制作畢業(yè)論文-在線瀏覽

2025-08-09 01:03本頁面
  

【正文】 年的歷史了。游戲的從設(shè)計到出產(chǎn)的過程,不是像玩游戲的那種總是充滿著輕松和刺激的感覺。但是,這個過程同樣的也充滿樂趣,只不過要求工作成員奉獻出更多的汗水和努力。在這個過程中,最為艱難的東西就是去學會應(yīng)用設(shè)計一款游戲所需要的技術(shù)手段。 在這篇論文中,我對開發(fā)一款第一人稱設(shè)計游戲進行了研究,利用 DirectX軟件,從設(shè)計一款游戲的總體規(guī)劃,游戲中的紋理和光照,程序中的腳本和 GUI,邊界框與邊界球技術(shù),Direct input 與外界接入設(shè)備,DirectSound 與 DirectMusic 這兩個和聲音的應(yīng)用并且附加了 3D 攝像機系統(tǒng)這幾個方面對游戲進行了相關(guān)的分析?,F(xiàn)在的引擎往往隱藏了一部分底層實現(xiàn)的具體代碼。游戲的引擎有:渲染,物理,聲音等等。其包含的東西沒有一個準確的意義。引擎的獨立開發(fā)是個艱難的工作,在游戲的開發(fā)中,所需要的一些基本的在DirectX 的 API 基礎(chǔ)上開發(fā)的引擎有渲染引擎,利用 DirectInput 的輸入引擎,利用DirectSound 的聲音引擎,包括碰撞運動的物理引擎,動畫引擎還有 AI 引擎。引擎的分析開發(fā)在設(shè)計游戲中必不可少,因為在開發(fā)設(shè)計游戲引擎中,它可以操控游戲中各種各樣的元素,如,游戲引擎中的語言算法不僅僅能夠收到并且分析外界設(shè)備對其輸入的指令,也可以根據(jù)運算對視頻音頻和特效進行控制,所以無論游戲是什么形式(2D 還是 3D,角色扮演,即時策略,冒險解密或者是動作射擊) ,引擎的設(shè)計都是必不可少的一部分。在第一人稱視角游戲的引擎設(shè)計過程中,可以改變光線的照射和裁剪的順序來降低工作量或改善運行效率。并且,渲染科技的發(fā)展使其不僅僅使用在 CPU上,也可以在 GPU上。這個技術(shù)現(xiàn)在可以自動高亮出不動的目標,但是對于正在變化位置的目標來說還不夠成熟。北京郵電大學世紀學院畢業(yè)設(shè)計(論文)2渲染是一款游戲引擎里最重要的系統(tǒng)。與此同時,它還可以把圖形附加在場景里面的幾何圖案表面。在這里,應(yīng)用DirectX中的 Direct Input API能夠檢測多種設(shè)備的輸入,并且不會有錯誤的發(fā)生。Direct Input上的接口能夠檢查出各種各樣的輸入設(shè)備。游戲的控制器包括像方向盤搖桿這些不是鼠標也不是鍵盤的設(shè)備。 聲音在 DirectX軟件中,主要應(yīng)用 DirectSound來在游戲的引擎中出來聲音。聲音系統(tǒng)實際上是作為一個比較小的系統(tǒng)存在于一個游戲的引擎之中,它利用比較少的代碼就能夠控制所有的聲音。聲音都是在文件之中裝載的,可以進行完整的裝載或者是以流進行播放,比如用DirectSound可以處理聲音的回放。物理是3D游戲的基礎(chǔ),所以成為了設(shè)計人員必備的基礎(chǔ)知識。游戲中的物理學不僅僅是數(shù)學,還有工作的狀況和運行方式。游戲中的物理學給游戲帶來了很多東西,比如改變物理性質(zhì)能夠重新設(shè)計人與環(huán)境交互的情形。 動畫計算機圖形學在動畫的繪制上應(yīng)用廣泛,如人物的模型。但是,在電腦 3D 游戲中,角色的繪制是一個很難解決的事情,因為生成的角色模型必須隨著輸入設(shè)備下達的指令隨時變化,同時也要和其余的人物產(chǎn)生互動。繪制手段通常有:幾何圖形的設(shè)計,動態(tài)繪畫方法和人物軀干的控制。如果 AI 表現(xiàn)的過于疲軟,那么這個游戲?qū)ν婕业奈蜁档?,所以完?AI 可以增加游戲的難度,吸引玩家在游戲上投入更多的時間。 DirectXDirectX 是微軟公司生產(chǎn)的一個應(yīng)用程序接口的軟件,在設(shè)計研發(fā)交互式軟件中起了很重要的作用。DirectX 不僅僅應(yīng)用于游戲的研發(fā)還能夠設(shè)計一些軟件可以設(shè)計游戲中的角色,還可以設(shè)計一些關(guān)于網(wǎng)絡(luò)和圖形的軟件。每個部分都可以各自獨立運行,進行不同功能的運作。北京郵電大學世紀學院畢業(yè)設(shè)計(論文)42.技術(shù)介紹 VC++開發(fā)語言如今,在開發(fā) 3D游戲的過程中需要根據(jù)不同的要求來挑選相應(yīng)的開發(fā)語言。在這些軟件中 Visual C++和 DirectX SDK這個由微軟公司出品的組合,在開發(fā) 3D游戲中有著重要的作用,現(xiàn)在市面上的游戲幾乎都有DirectX的程序,在這次的論文中,我也選擇這個組合來進行開發(fā)。在 3D圖形開發(fā)中更因為自己語言的特點具有無可比擬的優(yōu)勢,具體體現(xiàn)在:(一)面向?qū)ο竺嫦驅(qū)ο罂梢哉f是 VC++最重要的特性。VC++支持靜態(tài)和動態(tài)風格的代碼繼承及重用(二)底層調(diào)用VC++主要面向 Windows系統(tǒng),可以方便實現(xiàn)一些底層的應(yīng)用。在 3D圖形開發(fā)中,直接調(diào)用顯卡而不是通過復(fù)雜的接口可以更高效的顯示圖形。雖然 VC++不像 C一樣支持垃圾回收功能大大降低了開發(fā)效率,但這在 3D游戲圖形程序開發(fā)中卻能使開發(fā)人員更好的處理內(nèi)存與指針,大大提高了執(zhí)行效率。線程,有時也稱小進程,是一個大進程里分出來的小的獨立的進程。 DirectX SDKDirectX, (Direct eXtension,簡稱 DX)是由微軟公司創(chuàng)建的多媒體編程接口。被廣泛使用于 Microsoft Windows、Microsoft Xbox和 Microsoft Xbox 360電子游戲開發(fā),并且只能支持這些平臺。DirectX是多種應(yīng)用程序接口(API)的集合,它可以讓 windows為平臺的游戲或多媒體程序獲得更高的執(zhí)行效率。(一)Direct3D為大多數(shù)新視頻適配器內(nèi)置的 3D 調(diào)色功能提供界面。Direct3D 包含專用 CPU 指令集支持,從而可為新型計算機提供進一步加速支持。DirectSound 為多媒體軟件程序提供低延遲混合、硬件加速以及直接訪問聲音設(shè)備等功能。 (三)DirectInput為游戲提供高級輸入功能并能處理游戲桿以及包括鼠標、鍵盤和強力反饋游戲控制器在內(nèi)的其它相關(guān)設(shè)備的輸入。DirectPlay 簡化了對通信服務(wù)的訪問,并提供了一種能夠使游戲彼此通信的方法而不受協(xié)議或聯(lián)機服務(wù)的限制。(五)DirectShow提供了可在您的計算機與 Inter 服務(wù)器上進行高品質(zhì)捕獲與回放多媒體文件的功能。DirectShow 還具有視頻捕獲、DVD 回放、視頻編輯與混合、硬件加速視頻解碼以及調(diào)諧廣播模擬與數(shù)字電視信號等功能。3D Studio Max,常簡稱為 3ds Max 或 MAX,是 Autodesk 公司開發(fā)的基于 PC 系統(tǒng)的三維動畫渲染和制作軟件。擁有強大功能的 3DS MAX 被廣泛地應(yīng)用于電視及娛樂業(yè)中,比如片頭動畫和視頻游戲的制作,深深扎根于玩家心中的勞拉角色形象就是 3DS MAX 的杰作。而在國內(nèi)發(fā)展的相對比較成熟的建筑效果圖和建筑動畫制作中,3DS MAX 的使用率更是占據(jù)了絕對的優(yōu)勢。 3D 游戲技術(shù)理論 3D 圖形的基本成像流程傳統(tǒng)上 3D 圖形的處理方法是,將待顯示的 3D 物體(如杯子)表面微分為一北京郵電大學世紀學院畢業(yè)設(shè)計(論文)7個個小三角形面(這些三角形面的數(shù)量越多,顯示出來圖形效果越精致、光滑) 。這樣 3D 物件的繪制就轉(zhuǎn)換為逼近的微小三角形面的繪制,而 3D 物件的圖形方位數(shù)據(jù)就可用三角形的頂點坐標值來存儲。為了從數(shù)值上定量 3D圖形的方位數(shù)據(jù),引入一個世界坐標系,這樣每一個頂點均可準確地用一個(x,y,z)坐標定位出來,從而實現(xiàn) 3D圖形的形數(shù)轉(zhuǎn)換。畢竟,場景中的這些 3D物體通常是各自先行創(chuàng)建出來的,例如,利用一些 3D建模軟件取得的網(wǎng)格頂點數(shù)據(jù)就是基本這樣的坐標系。在大多數(shù)情形下,局部坐標系的 x、y 和 z軸都與世界坐標系 x、y 和 z軸是相應(yīng)平行的。這里,局部坐標系和世界坐標系不可以脫離開來理解,否則這個局部坐標系的點坐標無法準確地用統(tǒng)一的坐標系(世界坐標系)的坐標值來表示。當頂點的顏色值確定以后,三角形面的內(nèi)部點的顏色值就可以通過某種插值方法計算出來,從而整個 3D物體表面上的點的顏色值也就確定下來了。因為一個頂點往往是多個鄰接三角形面的公共交點,因此,頂點處的法向量通常是一個平均法向量。由此,頂點的結(jié)構(gòu)體必須添加一個反映其上法向量的變量域。從以上的討論很自然地引出如下的幾個待解決的 3D數(shù)學問題:平移坐標變換的坐標計算問題。法向量的計算,如何根據(jù)已知的三個點坐標,計算出所在平面的法向量。 攝影坐標系三維場景的空間范圍可以是無限的,計算機屏幕的大小卻是有限的。這就要求對三維場景進行必要的可視范圍的選擇。于是,就有必要在世界坐標系中引入一個觀察者來確定當前哪些場景物體應(yīng)該被顯示出來。觀察者可由世界坐標系中的一個點和一個指示觀察方向的向量來決定。觀察者及其觀察方向圖 世界坐標系下的觀察者位置及觀察方向從觀察者位置出主,沿著視線的觀察方向可構(gòu)造一個棱錐體的視覺區(qū)域,此時,再通過一個遠平面和一個近平面進行截割,形成一個去除了錐頭的棱臺體,這個棱臺體就是觀察進的可見區(qū)域范圍。而棱臺體又稱為視截體。至于視域的寬度限制則不使用角度來說明,而是采用任一截平面的寬高比率 Aspect來指定。視截體確定以后,下一步就要對三維物體的哪些三角形面需要顯示出來或部分顯示出來,哪些三角形面由于位于視截體外而不需要進行顯示進行計算分析,這個過程稱為三維剪裁。為此,在觀察者處建立一個所謂的攝影坐標系,并使其 z軸方向指向觀察方向,如圖 。這里,自然也會提出如下 4個 3D數(shù)學問題:如何從數(shù)學上描述攝影坐標系與世界坐標系的關(guān)系。已知在攝影坐標系下的視截體的 6個面的方程式,如何逆向計算出這些面在世界坐標系下的方程。 剪裁和透視投影三維視截體的剪裁并不是獨立進行的,而是結(jié)合透視投影來進行的。例如,在 z=1的位置上,可建立一個投影窗口,對于視截體內(nèi)的任一點 P,它的透視投影對應(yīng)點 P’為 OP線段與投影窗口的交點,如圖 6所示。顯然,透視投影只需要對那些們于視截體內(nèi)的三角形面的頂點進行投影,這意味著投影前要對頂點是否位于視截體內(nèi)進行判斷,即進行剪裁處理,以減少不必要的計算。為了簡化剪裁的判斷處理,實際并不采用圖 ,而是尋找一個具有透視投影性質(zhì),同時又可將視截體轉(zhuǎn)換為立方體的變換,從而使頂點是否在視截體內(nèi)的判斷,變?yōu)轫旤c的坐標分量 x、y 和 z是否分別介于區(qū)間[1,1]、[-1,0]和[0,1]的判斷。以二維剪裁為例(不難推廣到三維情形) ,如圖 ,假設(shè)剪裁區(qū)域由一個正方形來決定,圖中有 3個三角形,最左側(cè)的三角形 3個頂點都位于正方形內(nèi),因此這個三角形應(yīng)該被顯示出來。中間的三角形部分位于正方形區(qū)域內(nèi)(1 個頂點在正方形內(nèi),2 個頂點在外) ,因此通過求交取得三角形邊與正方形右邊線段交戰(zhàn),從而確定出新的三角形 ABC被顯示到屏幕上。相反,如果直接以攝影空間中的視截體為剪裁區(qū)域,那么必須計算棱臺 6個面的法向量,然后通過點向量與法向量的點積運算結(jié)果(正數(shù)或負數(shù))來判斷點在棱臺內(nèi)或棱臺外。當便于剪裁處理的透視投影變換選定后,就可以攝影空間中三維物體的各個微分三角形面頂點坐標進行投影變換計算,得到每個頂點的新坐標值 ,其中)39。(zyx。],[39。 ???zyx可表示出頂點在平面上投影情況,而})(|)39。為了更直觀地看待這個可將視截體轉(zhuǎn)換為立方體的透39。,(yx都關(guān)聯(lián)著一個表示原來頂點的縱深度的 坐標值。因此,變換后的坐標計算就成了三維圖形淡定中的一個基本數(shù)學問題。在三維圖形開發(fā)中,三維的點和向量實際是采用四維向量或 來統(tǒng)一處理的,這樣,才可以將各種變換的式子用齊次的矩陣)1,(zyx)0,(zyx形式表示出來。北京郵電大學世紀學院畢業(yè)設(shè)計(論文)13 向量在物理學的研究中,一些既有大小,又有方向的量,如力、速度等物理量,用一條有方向的線段(有向線段)來表示。雖然向量是一個與坐標系無關(guān)的幾何量,但是可以引入坐標系來加以研究。向量的坐標表示對于游戲開發(fā)來說是必需的,在世界坐標系下或攝影坐標系下的三角形面的法線、光線的方向和觀察者的方向等都是通過向量的坐標形式來準確給出的。 矩陣在線性方程組的求解上,變元較少的方程組(如僅有兩個未知數(shù) 和 的方程組)xy的解很容易表達出來,但是推廣到較為復(fù)雜的更多變元的情形,如何推測方程組的解以及如何用的式子表達出來,引發(fā)了對行列式的提出和研究。這樣是矩陣運算的產(chǎn)生歷史。矩陣的另一個常見應(yīng)用就是用來表示坐標系平移、旋轉(zhuǎn)變換后,點或向量的新舊坐標對應(yīng)關(guān)系。 坐標變換坐標變換可以用兩種不同觀點去理解。另一種觀點是保持坐標系不變,幾何點移動到新的位置處,要求計算新位置處幾何點的坐標。在世界坐標系已知的情況下,建立攝影坐標系,以簡化北京郵電大學世紀學院畢業(yè)設(shè)計(論文)14視截體的平面方程,又或利用透視投影變換將三維的圖形數(shù)據(jù)轉(zhuǎn)換為二維的圖形數(shù)據(jù),都是涉及到新、舊兩個坐標系的轉(zhuǎn)換,此時采用坐標系變換的第一種觀點去理解比較適合;當3D游戲中的精靈在三維場景中移動時,則采用點移動的第二種比較適于思考。(一)平移變換考慮某一坐標系 下的任意一點 ,在坐標系中任選一點xyz),(zyxP?,建立一個新的坐標系 , 各坐標軸正向平行于 軸。,39。 zyxO? 39。 xyz現(xiàn)在需要求出點 在新坐標系 下的坐標 。z)39。由空39。,39。圖 平移坐標變換O’O xx’yy’zz’P從而,展開向量的坐標分量取得如下的方程組(22):(22)??????zzyyxxPO39。39。39。PO??39。39。在這種坐標系的平x39。zzO39。再考慮在 中選定一點 ,建立另一個平移坐標系 ,39。,39。(zyxO39。zyx那么點 在這個 下的坐標 滿足式 (23):P39。39。39。),(39。39。zyx?)39。(zyx顯然,以上變換式子還需要進一步轉(zhuǎn)換為關(guān)于 和 的齊次等式來表示,39??梢岳镁仃噷⒋说仁綐?gòu)造出來。39
點擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1