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

正文內(nèi)容

基于j2me手機(jī)坦克大戰(zhàn)游戲設(shè)計(jì)與開發(fā)畢業(yè)論文-wenkub

2023-07-08 19:43:48 本頁面
 

【正文】 analysis on the logical relationship of each class. Therefore, so many functions of this game are showed, such as smooth running, use of props, the intelligent running of enemy tanks and so on. Through this game designed to deepen understanding of the J2ME mobile game development. By the time it focuses on application for consumptive electronic people products, providing revolutionary solution to the intelligentization and diversification of the equipment. It improves the efficiency of the development process thanks to its “Write Once, run anywhere” nature. Key words: J2ME。盡我所知,除文中特別加以標(biāo)注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得 及其它教育機(jī)構(gòu)的學(xué)位或?qū)W歷而使用過的材料。除了文中特別加以標(biāo)注引用的內(nèi)容外,本論文不包含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫的成果作品。本人授權(quán) 大學(xué)可以將本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。目前的移動(dòng)開發(fā)技術(shù)大體分為三個(gè)陣營:首當(dāng)其沖的便是由 SUN 公司提出的 ,與具體操作系統(tǒng)無關(guān)的 ,已得到各種設(shè)備廣泛支持的 J2ME 技術(shù),還有就是主要由 NOKIA公司倡導(dǎo)的 ,主要使用 C++語言的基于 Symbian 操作系統(tǒng) 的開放應(yīng)用平臺,以及微軟力推的主要使用 C配合 .NETCF 進(jìn)行開發(fā)的 Windows Mobile Smart Phone 平臺。 游戲的設(shè)計(jì)開發(fā)是一項(xiàng)綜合性的工程,一個(gè)游戲的設(shè)計(jì)開發(fā)需要多學(xué)科團(tuán)隊(duì)的參與,其基本的要素有三 :設(shè)計(jì) (Idea)、技術(shù) (Technology)和過程 (Process)。如果是缺少了過程的控制,開發(fā)出來的游戲可能 BUG 無數(shù),項(xiàng)目拖期,開發(fā)成本超出預(yù)算。 2 手機(jī)游戲產(chǎn)業(yè)發(fā)展現(xiàn)狀與趨勢 國際手機(jī)游戲產(chǎn)業(yè)發(fā)展現(xiàn)狀 全球手機(jī)游戲業(yè)務(wù)發(fā)展可分為兩個(gè)階段,以跨世紀(jì)為分界,之前移動(dòng)游戲處于起 步階段,之后步入了大發(fā)展階段。前幾年 ,歐洲的運(yùn)營商意識到了手機(jī)游戲市場的廣闊前景及其自身與日韓運(yùn)營商之間的差距,開始急起直追,手機(jī)游戲市場日漸活躍。 雖然目前手機(jī)游戲用戶數(shù)占移動(dòng)用戶的比例還不是很大,但隨著手機(jī)游戲產(chǎn)業(yè)發(fā)展環(huán)境的日益成熟,其發(fā)展速度將一日千里。這一數(shù)字不僅讓中國成為世界上最大的手機(jī)消費(fèi)國,更為重要的是,它也為手機(jī)游戲產(chǎn)業(yè)的發(fā)展帶來了廣闊的受眾基礎(chǔ)。 3 游戲背景介紹和論文來源與創(chuàng)新點(diǎn) FC(Family Computer)主機(jī)在歐美又稱 Nintendo Entertainment System(可譯作任天堂娛樂平臺即 NES)。由于其價(jià)格便宜且極易使用,經(jīng)過任天堂的改造后又煥發(fā)了全新活力。 對手機(jī)游戲開發(fā)中的幾項(xiàng)關(guān)鍵技術(shù)進(jìn)行應(yīng)用研究,在目前手機(jī)游戲應(yīng)用最廣泛、通用性最好的 J2ME 開發(fā)平臺上設(shè)計(jì)實(shí)現(xiàn)了: ⑴ 手機(jī)游戲通用框架 ⑵ 游戲滾屏 圖 1 80 年代中期的 FC 機(jī)器 圖 2 Battle City 的界面 4 論文組織結(jié)構(gòu) 論文具體的章節(jié)安排如下 : 第一章緒論論述了本文的研究背景和意義,探討了手機(jī)游戲業(yè)務(wù)的國內(nèi)外發(fā)展現(xiàn)狀。 第三章坦克大戰(zhàn)的設(shè)計(jì)流程和設(shè)計(jì)思路。 第五章是對程序進(jìn)行分析和全面解讀,從 進(jìn)入程序的畫面開始,一步步分析程序的流程走向,已經(jīng)過程中涉及到的每個(gè)類,分析每個(gè)類的作用,比如說敵方英雄類和坦克類等等。 5 第二章 游戲開發(fā)環(huán)境概述 開發(fā)環(huán)境 操作系統(tǒng): Microsoft Windows XP 程序語言: Java 2 platform Micro Edition JAVA 平臺: J2ME 插件: 開發(fā)集成平臺: 簡體中文版 模擬器: J2ME 平臺簡介 Java2 技術(shù)是一系列產(chǎn)品的集合,目前主要包括 Java2 平臺標(biāo)準(zhǔn)版 (Java 2 platform Standard Edition,J2SE)、 Java 2 平臺企業(yè)版 (Java 2 platform Enterprise Edition,J2EE)、 Java 2 平臺微型版 (Java 2 platform MicroEdition,J2ME)和 Java 卡平臺 [5]。自從 J2ME 發(fā)布以來,已經(jīng)有 600 多家公司加入這方面的開發(fā),包括 NOKIA、 MOTOROLA、 PALM 和 RIM 等知名大公司 [6]。由此,為軟件開發(fā)商在移動(dòng)通信領(lǐng)域創(chuàng)造了巨大的商業(yè)機(jī)會(huì),用戶在得到豐富應(yīng)用體驗(yàn)的同時(shí),也大大提高了運(yùn)營商的網(wǎng)絡(luò)流量。根據(jù)需要提供的功能不同,目前主要有兩類虛擬機(jī):專門為資源十分受限的小型嵌入式設(shè)備設(shè)計(jì)的 KVM(Kilo Virtual Machine,KVM)和為性能相對較強(qiáng)的嵌入式設(shè)備設(shè)計(jì)的 CVM(Compact Virtual Machine,CVM)。 簡表 (Profiles): 位于配置之上,為運(yùn)行環(huán)境提供高層的 API,例如,應(yīng)用程序模型和圖形用戶界面等。 可選包 (Optional Package): 用于擴(kuò)展 J2ME 的功能,由于是針對特殊技術(shù)的實(shí)現(xiàn),所以不適合做為一項(xiàng)特性定義到 MIDP 中,而采用了可選包的形式來提供。從而起到保護(hù)知識產(chǎn)權(quán)和減少程序大小的作用。因?yàn)?class 在傳輸過程中容易損壞或是被篡改,傳統(tǒng)的 Java 程序在運(yùn)行前,都在本地機(jī)器上對 .class 進(jìn)行 Byte Code 的校驗(yàn)。接下來為 jar 文件編寫一個(gè)以 jad 為編寫源代碼 混 淆 預(yù)校驗(yàn) 打包 模擬器 實(shí)際設(shè)備 編譯 圖 4 J2ME 程序開發(fā)流程 8 后綴的描述文件。 本章小結(jié) 本章首先給出了本次畢業(yè)設(shè)計(jì)所用到的系統(tǒng)編程軟件和環(huán)境,接著對 J2ME有了一個(gè)簡單的描述,其次是對 J2ME 平臺的體系結(jié)構(gòu)進(jìn)行了比較系統(tǒng)的研究,最后著重論述了 J2ME 移動(dòng)應(yīng)用程序的開發(fā)流程及部署方法。 ( 4) 詳細(xì)設(shè)計(jì):包括框架設(shè)計(jì)、圖像設(shè)計(jì)、具體方案、初步測試等。 每個(gè) MIDlet 都必須繼承 , 這個(gè) MIDlet 抽象類。在主程序運(yùn)行的線程中,畫面刷新將以一定的頻率采用雙緩沖技術(shù)對屏幕重繪,實(shí)時(shí)反映整個(gè)游戲的進(jìn)行狀態(tài)。用戶再次發(fā)射 子彈時(shí)只是將終止的線程再次激活。 TankMidlet 類是繼承自 MIDlet 的控制主程序啟動(dòng)的首先被載入系統(tǒng)的部分。它決定了游戲何時(shí)該結(jié)束,何時(shí)分配敵人數(shù)量,游戲結(jié)束字樣的閃現(xiàn)規(guī)則,地圖的繪制及整個(gè)游戲的調(diào)度。 敵方坦克由于需要具有一定的智能性,以便對玩家攻擊,使之具有一定的可玩性。另外,坦克的發(fā)炮間隔和轉(zhuǎn)后的具體方向都由隨機(jī)數(shù)決定。 N Y 子彈控制的設(shè)計(jì)思路 子彈的行為是雙方坦克的共同行為,每一個(gè)坦克都有他自己的一顆子彈,這顆子 彈在任何一輛坦克被構(gòu)造時(shí)就一直存在,在坦克發(fā)射子彈前,其圖像被設(shè)置為不可見,并且該子彈在只有直至和障礙物發(fā)生碰撞或坦克生命的結(jié)束時(shí)才消滅,子彈的再次出現(xiàn),只是將屏幕上暫時(shí)掩蓋的圖象重新置于坦克炮筒才恰當(dāng)位置,并使其顯示出來,向坦克前進(jìn)的方向前進(jìn),這與現(xiàn)實(shí)中每個(gè)子彈都是單獨(dú)的個(gè)體有所不同。子彈使用的是象素級的碰撞檢測,因?yàn)樽?彈的圖片形狀不規(guī)則,如果使用矩形碰撞檢測,將有可能在子彈尚未接觸到物體時(shí)就已返回碰撞的真值。敵人之間顯然,如上已經(jīng)提過,不坦克 玩家坦克 敵方坦克 電腦 碰撞 無反應(yīng) 向下 向上 向左 向右 開火鍵 向下移動(dòng) 向上移動(dòng) 向左移動(dòng) 向右移動(dòng) 發(fā)射子彈 轉(zhuǎn)向 按鍵盤 圖 7 坦克的邏輯設(shè)計(jì) 13 需要檢測,但敵人與玩家之間應(yīng)當(dāng)可以互相消除子彈,以便在狹窄的路口中仍有存活的機(jī)會(huì)。對磚墻將有能力將其擊毀,使之在畫面上消失;對水泥鋼筋將不能發(fā)生作用,子彈也不能通過;對于草叢,子彈和坦克都可以通過。因此,其邏輯設(shè)計(jì)應(yīng)當(dāng)相當(dāng)嚴(yán)謹(jǐn),需將所有可能發(fā)生的事件及意外情況考慮在設(shè)計(jì)中。本次設(shè)計(jì)由于是一個(gè)人獨(dú)立開發(fā),不可能具有全面的才華,因此需要從自身以外的地方獲取資料。這需要對所有的對象有較好的控制。每一次刷新頁面、每前進(jìn)一步都需要將所有的周圍環(huán)境都進(jìn)行掃描。手機(jī)中由于處理器和內(nèi)存 空間、存儲空間都十分有限,其數(shù)據(jù)庫結(jié)構(gòu)較為簡單,與普通 PC 大相徑庭。由于設(shè)備的限制,實(shí)現(xiàn) FC 版所有功能將會(huì)產(chǎn)生比較龐 大的數(shù)據(jù),因此簡化部分功能也是需要詳細(xì)考慮。 以上相關(guān)技術(shù)細(xì)節(jié)和整體流程將分別在以下小節(jié)闡述。它的基本用法與其他 Displayable 對象一致。鍵盤事件由鍵代碼指定,但這樣控制游戲會(huì)導(dǎo)致缺乏通用性,并不是每個(gè)設(shè)備的鍵盤布局都適合游戲的操作。針對不同的需要,Graphics 類中提供了用于描繪線條、繪制和填充矩形或圓角矩形、繪制和填充圓弧以及文本和圖像的方法。 PNG 格式圖片中包含許多定義其圖片特性的冗余部分 (Chunks)。 雙緩沖技術(shù) 在沒有 前,進(jìn)行游戲繪圖一般需要手動(dòng)編程使用雙緩沖。繪制動(dòng)畫時(shí)經(jīng)常需要不斷地更新畫面,而更新畫面的操作就是先將屏幕 以 fillRect()的方式清除,再將下一張圖片畫在屏幕上,然而反復(fù)的清除及重繪會(huì)造成屏幕的閃爍現(xiàn)象 (flicker),因此使用雙重緩沖的好處就是在背景進(jìn)行這個(gè)清除及重繪的操作,再將完成的繪圖拷貝到屏幕上,由于用戶看不到清除的操作,因此就不會(huì)出現(xiàn)閃爍的現(xiàn)象了。由于開發(fā) 手機(jī)游戲時(shí)我們主要用到的是 Key 事件的處理方法,因?yàn)橐苿?dòng)設(shè)備的鍵盤是傳遞用戶意圖的最主要的輸入設(shè)備, Key 事件屬于低層事件。簡單的一個(gè)樣例代碼: //監(jiān)聽按鍵信息并處理按鍵 public void keyPressed (int keyCode) { if (keyCode 0) { } } //輸出當(dāng)前被按下鍵的鍵碼 System. (“keyPressed ” +( (char) keyCode ) )。它是用來處理手機(jī)操作鍵盤上的按鍵被釋放的事件,這個(gè)方法也同樣沒有與之對應(yīng)的顯示的聽眾,這些聽眾也是由系統(tǒng)根據(jù)實(shí)際對象 提供的。 其中前兩種是持久性的內(nèi)存,關(guān)閉電源后還能保持?jǐn)?shù)據(jù)的正確性,通常這兩種內(nèi)存所能存儲的容量是合并計(jì)算的,這個(gè)上限對每種手機(jī)都不一樣,大部分在一兩 百 KB 內(nèi)。所有這些可以借助混淆器來幫助實(shí)現(xiàn)。這樣在處理起來就會(huì)更加流暢和節(jié)省運(yùn)行時(shí)間。目前流行的如 decode, JAD 等反編譯工具可以以很快的速度生成源文件。 混淆器的作用不僅僅是保護(hù)代碼,它也有精簡編譯后程序大小的作用。目前流行的 Obfuscator 有 RetroGuard 等 [15]。由于專業(yè)限制本設(shè)計(jì)所有地圖美工文件和聲音文件均是由朋友提供。)、結(jié)束的函數(shù)。繼承了 mandListener 的類必須擁有 mandAction()以決定對按鍵采取什么樣的行為。 在本程序開始的界面中,先由下而上先顯示出本程序的片頭圖片: BattleCity,在圖片顯示動(dòng)畫結(jié)束之后會(huì)顯示出供玩家選擇的三個(gè)選項(xiàng)按鈕,它們分別為:PLAY、 DIFFICALTY、 CONSTRUCTION 代表著開始游戲、難度選擇和游戲說明。在本程序中主要?jiǎng)澐譃?8 個(gè)類: TankCanvas、 TankMIDlet、 Enemy、 SoundPlayer、 EnemyPool、 Hero、Bonous、 Bullet。刷新速度需大于 30 毫秒才能使畫面顯示因人眼的暫時(shí)停留效應(yīng)流暢運(yùn)行。它們分別為: Enemy和 Hero。 構(gòu)造函數(shù)中,需初始化地。其他的,如 記分統(tǒng)計(jì)畫面也都需在此主邏輯中建立相 應(yīng)對象。其主邏輯如圖 12 所示。 21 主 游戲邏輯及涉及到的若干類 TankCanvas 主管著所有類之間的協(xié)調(diào),決定何時(shí)死亡,何時(shí)分配新的敵人,及控制敵人出現(xiàn)處的閃光圖標(biāo)、游戲結(jié)束后的顯示字樣。在難度選擇界面玩家可以自由選擇普通模式和困難模式,普通模式屏幕上最多出現(xiàn)的敵方坦克數(shù)為 5,而困難模式屏幕上能出現(xiàn)的最大坦克數(shù)為 7。在設(shè)置好 mandlistener 后,需要調(diào)用 setCommandListener()以將按鈕事件激活。游戲的啟動(dòng)選項(xiàng)畫面在 TankCanvas 類中,在控制主程序運(yùn)行的 MIDlet 中, startApp()函數(shù)隨即調(diào)用了 Displayable 的 setCurrent()函數(shù)將當(dāng)前屏幕設(shè)置為 TankCanvas。它控制著整個(gè)程序的運(yùn)行,并且可以通過
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1