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

正文內(nèi)容

畢業(yè)論文-基于cocos2d-x游戲引擎的飛行射擊類游戲設(shè)計與實現(xiàn)(參考版)

2025-01-15 11:57本頁面
  

【正文】 如表 、表 所示。 ( 1) 游戲?qū)宇?GameLayer,如表 、表 所示。 圖 飛機大戰(zhàn)類圖 如圖 所示,由于類比較多空間有限 , 所以就不一一列舉類中的參數(shù)及函數(shù)。 主要 負(fù)責(zé)游戲暫停、更新分?jǐn)?shù)的操作。 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 19 頁 闖關(guān)游戲結(jié)束層類:繼承 CCLayer 類,主要負(fù)責(zé)闖關(guān)模式游戲結(jié)束時的換場動畫。 游戲結(jié)束層類:繼承 CCLayer 類,主要負(fù)責(zé)無盡模式游戲結(jié)束時,對積分的統(tǒng)計、判斷是否加入歷史最高分。 闖關(guān)歡迎層類:繼承 CCLayer 類,主要負(fù)責(zé)闖關(guān)模式的換場動畫。 子彈層類:繼承 CCLayer 類,主要負(fù)責(zé)加載戰(zhàn)機子彈紋理、啟動戰(zhàn)機子彈的射擊、停止戰(zhàn)機子彈射擊、諸如速度和起始位置的戰(zhàn)機屬性的設(shè)置、子彈的移除操作。 游戲簡介類:繼承 CCLayer 類,主要負(fù)責(zé)顯示游戲幫助及游戲背景。 歡迎場景類:繼承 CCScene 類,游戲引擎思想中的必備部分,主要用于加載歡迎層類。 道具層類:繼承 CCLayer 類,主要負(fù)責(zé)雙排道具和全屏炸彈道具的初 始化、定義道具出現(xiàn)的概率及位置、雙排子彈的移除、道具使用后的效果、戰(zhàn)機沒有獲得道具對道具進(jìn)行回收。 戰(zhàn)機層類:繼承 CCLayer 類,玩家選擇無盡模式或闖關(guān)模式 后加入 到 游戲場景中。它主要負(fù)責(zé)戰(zhàn)機普通子彈與三種敵機的 碰撞檢測、戰(zhàn)機在獲得雙排子彈道具后雙排子彈與三種敵機的碰撞檢測、戰(zhàn)機與三種敵機的碰撞檢測、全屏炸彈使用后毀滅當(dāng)前幀中所有敵機、更新全屏炸彈的數(shù)量、內(nèi)存的管理、更新積分等等。此外,游戲?qū)宇愂钦麄€游戲的核心。 敵機層類:繼承 CCLayer 類,主要負(fù)責(zé)三種敵機類型生命值的設(shè)定、闖關(guān)模式中 BOSS標(biāo)記符的設(shè)定、游戲難度的設(shè)定、加載三種敵機、移除三種敵機、三種敵機的爆炸效果、敵機數(shù)組的操作。在這些類中最復(fù)雜最主要的是游戲?qū)宇悾驗樗?lián)系了戰(zhàn)機層、子彈層、雙排子彈層、控制層、道具層、敵機層等。 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 18 頁 由于有些類是使用游戲引擎所必須定義的,所以本游戲的 類 會比較多。具體調(diào)度如圖 所示 。場景可以通俗的理 解為手機屏幕,它是有一個或多個層組成的。Cocos2dx 最主要有 4 個概念,分別是 Direct(導(dǎo)演)、 Scene(場景)、 Layer(層)、 Sprite(精靈)。使用這個類會大大減少我們在數(shù)據(jù)存儲上所 花 費的時間。 分?jǐn)?shù)存儲的優(yōu)化 由于游戲所需存儲的數(shù)據(jù)并不多,所以我們不用諸如 sql server、 MySQL 之類的數(shù)據(jù)庫,因為它們會為我們游戲的開發(fā)帶來不必要的消耗。此外 Cocos2dx 為開發(fā)者提供了使用 plist 文件的函數(shù),開發(fā)者使用經(jīng)過打包的紋理圖,可以大大減少紋理所占內(nèi)存以及紋理切換所帶來的開銷。對于我們這款飛行射擊類游戲,需要使用到的紋理比較多,花費在渲染上的時間將會比較多,所以會拖慢游戲整體的速度 從而 影響游戲的效果。 經(jīng)過加載后需要 1MB( 512*512*4=1MB)的空間,遠(yuǎn)遠(yuǎn)大于原圖。比如 本身是 400*300,載入內(nèi)存后它就會變成 512*512 的紋理。 Cocos2dx 游戲引擎中提供了批次渲染機制 CCSpriteBatchNode,這種機制能使出現(xiàn)在屏幕之上 的眾多子彈只被渲染一次,大大提高了游戲的運行效果。 子彈的優(yōu)化 在游戲每一幀中會出現(xiàn)上百顆子彈,若使用普通渲染機制,子彈的紋理將會被渲染上百次,大大影響了游戲的效果。 圖 碰撞檢測原理圖 音樂播放模塊的設(shè)計 若玩家選擇了打開背景音樂和游戲音效,當(dāng)游戲開始時,音樂模塊需要把音樂資源載入程序并且播放。由于渲染在屏幕上的每個紋理,系統(tǒng)都會將其用一個能容納下該紋理的最小矩形包圍起來,所以碰撞檢測的實質(zhì)就是檢測兩個矩形是否有交集。闖過第一關(guān)后,每個關(guān)卡會有不同的 BOSS,它們會發(fā)射攻擊力不同的子彈,所以會增加一個 BOSS 子彈層,在每一幀中會自動檢測每顆子彈是否擊中玩家戰(zhàn)機。 ( 4)累加當(dāng)前幀中所有敵機相應(yīng)的分?jǐn)?shù),當(dāng)前幀中所有的戰(zhàn)機執(zhí)行爆炸效果,敵機數(shù)組中移除畫面中所有的敵機,最后更新積分。 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 16 頁 ( 2)判斷玩家是否使用全屏炸彈,若使用全屏炸彈則執(zhí)行 3。雙排子彈的算法與普通子彈類似,區(qū)別之處在于子彈發(fā)射的位置,普通子彈在戰(zhàn)機的中間,而雙排子彈的發(fā) 射位置在飛機的兩個翅膀上。 道具模塊的設(shè)計 道具分為兩種,分別為全屏炸彈和雙排子彈。 ( 2)在每輪游戲結(jié)束時,比較當(dāng)前用 戶得分和歷史最高分。 ( 4)若敵機毀滅,執(zhí)行爆炸幀動畫并在數(shù)組中刪除敵機 。 ( 2)敵機出現(xiàn)的位置在屏幕的頂部,具體的橫坐標(biāo)用隨機函數(shù)生成 。 表 敵機 屬性 生命值 對應(yīng)分?jǐn)?shù) 敵機一 1 10 敵機二 5 50 敵機三 12 100 敵機每被一顆子彈擊中,生命值減一,當(dāng)生命值減到零時敵機滅亡。 ( 6)對擊中敵機的子彈進(jìn)行回收 。 ( 5) 若子彈移動的位置超出了屏幕并沒有擊中任何敵機,則對其進(jìn)行回收。 ( 3)對存儲在緩存中的子彈圖片進(jìn)行渲染,并加到當(dāng)前場景中 。每一幀上子彈的數(shù)量很多,但每顆子彈的算法是一致的 ,分為以下幾步 : ( 1)獲取戰(zhàn)機的世界坐標(biāo)位置 。 ( 3) 執(zhí)行戰(zhàn)機爆炸幀動畫,移除場景中的戰(zhàn)機 ,最后跳轉(zhuǎn)到游戲結(jié)束場景 。 戰(zhàn)機模塊的設(shè)計 戰(zhàn)機模塊分為無盡模式戰(zhàn)機模塊和闖關(guān)模式戰(zhàn)機模塊,基本算法分為以下幾步 : ( 1) 在每一幀中,先執(zhí)行 戰(zhàn)機移動模塊 。 ( 4)判斷此時坐標(biāo)是否超過屏幕,若超過則把戰(zhàn)機移動到屏幕的最大邊緣處,若沒超過執(zhí)行下一步 。 ( 2)判斷手指最初觸摸地方是否在戰(zhàn)機有效范圍內(nèi),若在執(zhí)行下一步 。 ( 4)判斷戰(zhàn)機是否與敵機一、二、三相撞,若相撞則執(zhí)行玩家戰(zhàn)機模塊 。 ( 2)判斷雙排子彈是否擊中敵機一、二、三 。為了吸引更多的群體,軟件必須跨平臺、游戲界面必須好看、玩法必須不止一種、需要有積分系統(tǒng)、敵機種類要多、操作簡單上手容易、玩家戰(zhàn)機要能升級、會出現(xiàn)讓玩家感到眼前一亮的道具系統(tǒng)、音樂與音效必須達(dá)到逼真的效果。 游戲主要描述的是,為了維護(hù)國家的領(lǐng)空權(quán),玩家戰(zhàn)機翱翔于天空,大戰(zhàn)敵方飛機。但由于此過程一般為迭代過程,在設(shè)計之后有可能再回到分析,又由于篇幅有限,所以在本文中會以最簡潔的方式描述(若在系統(tǒng)設(shè)計中回到了分析,本文將不再過多描述,直接描述出 主要成果)。 圖 闖關(guān)模式界面 圖 設(shè)置界面 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 14 頁 4 系統(tǒng)設(shè)計 軟件的實際開發(fā)階段從系統(tǒng)設(shè)計正式開始,這部分主要完成的任務(wù)是把之前所做的分析模型轉(zhuǎn)換為軟件的設(shè)計模型。 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 13 頁 設(shè)置界面 設(shè)置界面包含七個元素,分別是背景、游戲名字、背景音樂標(biāo)簽、音效標(biāo)簽、返回按鈕、背景音樂開關(guān)按鈕、音效開關(guān)按鈕。 圖 游戲主界面 圖 無盡模式界面 闖關(guān)模式界面 闖關(guān)模式界面包含 八 個元素,分別是背景、玩家戰(zhàn)機、子彈、敵方飛機、分?jǐn)?shù)標(biāo)簽、積分、 BOSS、 BOSS 子彈。 無盡模式界面 無盡模式界面包含六個元素,分別是背景、玩家戰(zhàn)機、子彈、敵方飛機、分?jǐn)?shù)標(biāo)簽、積分。 游戲主界面 游戲主界面包含七個元素,分別是背景、 游戲名字、無盡模式按鈕、闖關(guān)模式按鈕、游戲簡介按鈕、設(shè)置按鈕、關(guān)于按鈕。 ( 4) CPU 頻率大于等于 800MHZ。 ( 2) RAM 大于等于 512M。 ( 4)其它工具: Office 202 Python、 VMware、 Photoshop cs TexturePackerGUI。 ( 2)開發(fā)平臺: Microsoft Visual Studio 202 Xcode、 Eclipse。倘若選擇的是闖關(guān)模式,系統(tǒng)還會加載進(jìn)與 BOSS 相關(guān)的資源以及與闖關(guān)模式相關(guān)的規(guī)則。若玩家戰(zhàn)機與敵機發(fā)生碰撞則結(jié)束游戲,與此同時 會 去判斷是否超過歷史最高分 。 在游戲的每一幀中,系統(tǒng)都會自動按順序判斷子彈是否擊中敵機、玩家戰(zhàn)機是否與敵機發(fā)生碰撞。 如圖 所示,玩家啟動游戲后載入菜單選項,若玩家選擇無盡模式,游戲會為玩家載入相應(yīng)的游戲音效以及一些必要的資源文件 。 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 11 頁 。 。 ,若獲得,則判斷玩家是否使用全屏炸彈。 ,若獲得則 停止單排子彈發(fā)射 執(zhí)行雙排子彈 。然后對玩家戰(zhàn)機、被碰撞到的敵機以及相應(yīng)子彈進(jìn)行回收,之后跳轉(zhuǎn)到游戲結(jié)束場景。 。 ,若發(fā)生碰撞,敵機一生命值減一,若減一后生命值減為 0,敵機一執(zhí)行爆炸幀動畫,玩家戰(zhàn)機增加相應(yīng)分?jǐn)?shù) ,之后敵機與對應(yīng)的子彈被回收 。 ( 2)闖關(guān)模式中執(zhí)行游戲用例,如表 所示 表 執(zhí)行游戲用例描述 用例名稱 執(zhí)行游戲 用例描述 游戲中,每一幀需要完成的任務(wù) 參與者 玩家與程序共同執(zhí)行 前置條件 游戲初始化成功 后置條件 如果玩家飛機未被毀滅則循環(huán)執(zhí)行,如果玩家飛機被毀滅則執(zhí)行游戲結(jié)束用例 基本路徑 ,使背景向下移動對應(yīng)的像素點 。 。 。 BOSS 子彈層 。 。 。 表 初始化游戲的用例描述 用例名稱 初始化游戲 用例描述 進(jìn)行執(zhí)行游戲前的準(zhǔn)備工作 參與者 程序自動執(zhí)行 前置條件 玩家成功選擇無盡模式或闖關(guān)模式 后置條件 如果執(zhí)行成功,用戶可玩游戲 S y s t e m玩家菜單選擇啟動無盡模式啟動闖關(guān)模式創(chuàng)建戰(zhàn)機加載頁面初始化游戲創(chuàng)建背景創(chuàng)建 B O SSB O SS 射擊音樂控制查看游戲幫助查看開發(fā)者信息顯示畫面顯示畫面 in c lu d e in c lu d e in c lu d e in c lu d e in c lu d e 初始化游戲創(chuàng)建背景 in c lu d e in c lu d e in c lu d e in c lu d e in c lu d e in c lu d e in c lu d e 執(zhí)行游戲碰撞檢測創(chuàng)建子彈 in c lu d e in c lu d e 控制游戲移動戰(zhàn)機使用道具暫停 in c lu d e in c lu d e in c lu d e in c lu d e in c lu d e 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 10 頁 基本路徑 。 圖 飛機大戰(zhàn)用例圖 其中有幾個用例比較復(fù)雜,這里對最復(fù)雜的闖關(guān)模式初始化游戲與執(zhí)行游戲兩個用例進(jìn)行用例描述。此外,游戲還提供道具,分別是雙排子彈和全屏炸彈。對于第一次接觸此游戲的玩家,可以通過查看游戲幫助學(xué)習(xí)游戲玩法。敵方三種飛機類型隨機出現(xiàn),飛行速度根據(jù)游戲難度的增加而增加,游戲難度隨玩家積分的增加而增加。其中模式選擇分為無盡模式和闖關(guān)模式、分?jǐn)?shù)存儲分為分?jǐn)?shù)讀取與分?jǐn)?shù)更新、游戲幫助分為玩法說明與開發(fā)說明、音樂控制分為打開音樂與關(guān)閉音樂、道具分為雙排子彈道具與全屏炸彈道具、敵機管理分為增加敵機與敵機回收。 ( 13)關(guān)于 為玩家展示開發(fā)者的 相關(guān) 信息以及關(guān)于此款游戲的相關(guān)信息。系統(tǒng)默認(rèn)打開背景音樂和音效。 ( 11)背景音樂、音效的設(shè)置 背景音樂、音效的開關(guān)放置在主菜單中,玩家選擇設(shè)置菜單項后,系統(tǒng)跳轉(zhuǎn)到設(shè)置界面。存儲的形式為在本地保存一個 xml 的文本。全屏炸彈觸發(fā)后,當(dāng)前屏幕的敵機全部 被 銷毀 。 表 無盡模式中積分與難度表 積分 難度 無盡 模式 0 —20 萬 容易 20 萬 —60 萬 中等 大于 100 萬 困難 表 闖關(guān)模式中關(guān)卡與難度對應(yīng)表 關(guān)卡 難度 闖關(guān) 模式 第一關(guān) 容易 第二關(guān) 中等 +BOSS1 第三關(guān) 困難 +BOSS2 ( 8)道具 道具分為兩種,一種是雙排子彈,玩家戰(zhàn)機獲得該道具后,會在一段時間內(nèi),戰(zhàn)機子彈由一列變?yōu)閮闪校^相應(yīng)時間,雙排子彈消失,戰(zhàn)機變回單排子彈。闖關(guān)模式難度在基本難度上還會加上 BOSS 所帶來的難度。 無盡模式初始難度為容易。這種模式是專門為喜歡嘗試新鮮玩法的玩家專門設(shè)計的。 中國礦業(yè)大學(xué) 2022 屆本科生畢業(yè)設(shè)計(論文) 第 7 頁 圖 背景移動原理圖 ( 5)無盡模式 即最經(jīng)典的玩法,玩家戰(zhàn)機攻擊敵機,直到戰(zhàn)死。通過一系列的判斷語句,判斷背景所在屏幕中的位置。 如圖 所示 。實際上是根據(jù)設(shè)定的時間間隔,把敵機移動一段距離。當(dāng)手指觸摸在飛機有效范圍外時,觸摸事件將不會被激活,飛機 也 不會隨著手指 的移動而移動。當(dāng)手指在飛機一定范圍內(nèi) 觸摸 時,觸摸事件被激活 。當(dāng)玩家積分達(dá)到 每一關(guān)對
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1