基于虛擬環(huán)境的手機(jī)飛行游戲設(shè)計(jì)_第1頁
基于虛擬環(huán)境的手機(jī)飛行游戲設(shè)計(jì)_第2頁
基于虛擬環(huán)境的手機(jī)飛行游戲設(shè)計(jì)_第3頁
基于虛擬環(huán)境的手機(jī)飛行游戲設(shè)計(jì)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

基于虛擬環(huán)境的手機(jī)飛行游戲設(shè)計(jì)

0休閑類游戲是建設(shè)休閑化的平臺(tái)根據(jù)2006年11月塞迪的聯(lián)合調(diào)查和釣魚網(wǎng)的聯(lián)合報(bào)告,56%的用戶從2005年開始接觸r游戲,這表明手機(jī)游戲市場從2005年開始?,F(xiàn)在他們還不成熟,所以手機(jī)游戲市場在增長。賽迪顧問2006年報(bào)告稱,未來5年中國網(wǎng)絡(luò)游戲市場將保持41%的年均復(fù)合增長率,預(yù)計(jì)2010年市場銷售額將達(dá)到227億元。艾瑞市場顧問2006年網(wǎng)絡(luò)游戲報(bào)告顯示:中國網(wǎng)絡(luò)游戲市場趨于多元化、休閑化發(fā)展。休閑類游戲基本輕松活潑,從政策風(fēng)險(xiǎn)上看,更符合用戶以及政府對游戲健康化的需求。本游戲是一款基于藍(lán)牙聯(lián)網(wǎng)的飛行類模擬游戲,采用時(shí)下業(yè)界標(biāo)準(zhǔn)的J2me平臺(tái)開發(fā),具有良好的通用性、跨平臺(tái)性,能運(yùn)行于大多數(shù)的Java手機(jī)的平臺(tái)上,具有良好的移動(dòng)性和可中斷性,為人們悠閑娛樂提供了方便;既可以單人作戰(zhàn)也可以雙人協(xié)作完成任務(wù),同時(shí)本游戲?qū)儆谛蓍e類的游戲,不同于RPG等角色扮演游戲,花費(fèi)時(shí)間短、娛樂性強(qiáng)、不容易沉迷,是現(xiàn)時(shí)政府所提倡發(fā)展的游戲類型。游戲設(shè)計(jì)采用了大量的幾何、圖像學(xué)、游戲設(shè)計(jì)、嵌入式編程等知識(shí),如敵機(jī)追蹤子彈的實(shí)現(xiàn),旋轉(zhuǎn)大炮用到的部分幾何方法及實(shí)現(xiàn)原理,敵機(jī)和主角散彈的實(shí)現(xiàn),單個(gè)敵機(jī)和一排敵機(jī)軌跡的實(shí)現(xiàn),關(guān)末大機(jī)(也就是boss)軌跡的實(shí)現(xiàn),敵機(jī)、子彈及主角的碰撞檢測等功能用到了大量的幾何知識(shí)和數(shù)學(xué)理論。數(shù)學(xué)理論的應(yīng)用解決了游戲中實(shí)時(shí)性強(qiáng),處理的邏輯比較復(fù)雜的問題。由于是基于手機(jī)平臺(tái)開發(fā)的,所以具有移動(dòng)性強(qiáng)、能為用戶隨時(shí)隨地提供娛樂等特點(diǎn)。1配合手機(jī)游戲的實(shí)現(xiàn)過程中,采用了程序設(shè)計(jì)與幾何知識(shí)的結(jié)合,包括敵機(jī)的追蹤子彈、旋轉(zhuǎn)大炮、敵機(jī)和主角散彈、單個(gè)敵機(jī)和一排敵機(jī)軌跡的實(shí)現(xiàn)、碰撞、軌跡變化等等。現(xiàn)介紹三個(gè)實(shí)例,以闡述數(shù)學(xué)理論在游戲中的合理使用。1.1求機(jī)動(dòng)的距離實(shí)現(xiàn)原理:設(shè)子彈x方向的速度為speedx,y方向的速度為speedy;根據(jù)公式:speedx=speedy×tan(a)(1)tan(a)=|dx/dy|(2)我們可以得到主角的坐標(biāo)(x1,y1)和敵機(jī)坐標(biāo)(x2,y2),再根據(jù)公式:distance×distance=(x2-x1)×(x2-x1)+(y2-y1)×(y2-y1)(3)求出兩點(diǎn)間的距離,從而可以求出追蹤子彈的軌跡。注意:由于敵機(jī)與主角的坐標(biāo)是實(shí)時(shí)變化的,每次敵機(jī)要發(fā)射下一顆子彈,都會(huì)根據(jù)主角實(shí)時(shí)坐標(biāo)來發(fā)射的,所以我們可以將該任務(wù)放在線程里面動(dòng)態(tài)獲取;我們在求敵機(jī)與主角距離時(shí)用到公式(4):distance×distance=(x2-x1)×(x2-x1)+(y2-y1)×(y2-y1)(4)在求解的時(shí)候可以用一個(gè)多重循環(huán)來獲得。如圖1所示。1.2開發(fā)平臺(tái)實(shí)現(xiàn)原理:由于cldc1.0不支持浮點(diǎn)數(shù)(float),所以程序采用了由小數(shù)點(diǎn)后2位開始模擬4舍5入的算法,以使游戲盡量精確,其實(shí)現(xiàn)封裝到tan(int,int,int)的方法中。而且Math類里面的方法不能用于cldc1.0上,和float數(shù)一樣要到cldc1.1才開始支持,而我們?yōu)榱俗層螒蛑С指嗍謾C(jī)型號所以用了兼容性更好的cldc1.0上的midp2.0為開發(fā)平臺(tái),Math類里面的cos(),sin()函數(shù)都不能用,所以我們只能人工實(shí)現(xiàn)。如圖2所示,其中散彈的運(yùn)動(dòng)軌跡可以分解為x、y方向的運(yùn)動(dòng),如以下公式:x=R×sin(a)(5)y=R×cos(a)(6)R×R=dx×dx+dy×dy(7)(注:dy、dx分別為x軸和y軸的距離差值)由以上公式可以算出每次子彈的坐標(biāo)x、y,同樣可以放在線程里面來處理,由于我們是用了同一個(gè)子彈對象,所以我們的碰撞檢測可以放在循環(huán)內(nèi)執(zhí)行。1.3敵人、子彈和主角之間的碰撞試驗(yàn)1.3.1高度重視彈道裝置高的區(qū)域,假設(shè)利用財(cái)務(wù)特征識(shí)別內(nèi)接公式進(jìn)行碰撞實(shí)現(xiàn)原理:我們可以獲得子彈的坐標(biāo)(x1,y1)和主角坐標(biāo)(x2,y2),通過這兩個(gè)坐標(biāo)的關(guān)系來判斷他們的碰撞情況。滿足碰撞的情況為(w1、w2分別是子彈和主角的寬度,h1、h2分別是子彈和主角的高度):(x1+w1)>x2&&(x2+w2)>x1&&(y1+h1)>y2&&(y2+h2)>y1(8)只要滿足這個(gè)情況的子彈和主角就有碰撞了,也就是矩形碰撞。因?yàn)樽訌検菆A形的,所以我們在做矩形碰撞時(shí)可以做一個(gè)內(nèi)接矩形,而飛機(jī)是類似三角形的,我們可以做一個(gè)如圖3一樣的矩形來進(jìn)行碰撞檢測。因?yàn)槲覀冊谕嬗螒驎r(shí)是不會(huì)因子彈與飛機(jī)稍微接觸就讓飛機(jī)減速的,所以用像素級碰撞是不符合游戲需要的,且其效率也會(huì)很低。1.3.2按照公式計(jì)算實(shí)現(xiàn)原理:當(dāng)圓形碰撞時(shí),我們可以通過獲得子彈和主角精確的坐標(biāo),求出兩個(gè)圓形的圓心坐標(biāo)(x1,y1),(x2,y2),然后通過公式。distance×distance=(x2-x1)×(x2-x1)+(y2-y1)×(y2-y1)(9)求出兩個(gè)圓心的距離,再跟兩個(gè)圓形的半徑之和來對比,如果滿足:distance<r1+r2的話就碰撞了。這些我們都可以通過程序來實(shí)現(xiàn),只需要我們每次移動(dòng)物體之前都進(jìn)行一次碰撞檢測的話就可以實(shí)現(xiàn)該功能。2系統(tǒng)運(yùn)行效果本系統(tǒng)采用現(xiàn)時(shí)主流的彩屏手機(jī)---索尼愛立信的k750彩屏手機(jī)進(jìn)行了測試,并參加了大學(xué)生計(jì)算機(jī)作品大賽,情況分類如下:(1)I---單機(jī)運(yùn)行該游戲的效果;(2)II---雙機(jī)聯(lián)網(wǎng)協(xié)同運(yùn)行該游戲的效果;(3)III---中斷游戲,接聽電話后繼續(xù)開始游戲。使用效果數(shù)據(jù)如表1所示,在游戲成功安裝在大多數(shù)的Java手機(jī)的平臺(tái)后,單機(jī)運(yùn)行成功率在96.8%以上,雙機(jī)聯(lián)網(wǎng)協(xié)同游戲成功率在86.8%以上,而中斷游戲接聽手機(jī)后繼續(xù)游戲成功率在74.1%以上。而前兩者的失誤大多發(fā)生在不同型號手機(jī)的使用時(shí),后者的失誤多發(fā)生在匆忙接聽電話而進(jìn)行了誤操作造成的。在正式比賽時(shí),各項(xiàng)情況成功率為100%,表明該游戲系統(tǒng)運(yùn)行是可靠的。3利用程序設(shè)計(jì)解決設(shè)計(jì)難題本系統(tǒng)嚴(yán)格按照了手機(jī)本身的特點(diǎn),運(yùn)用游戲的設(shè)計(jì)思想、編程方法和實(shí)現(xiàn)技巧來實(shí)現(xiàn)系統(tǒng)的所需功能。游戲中有較多的效果是運(yùn)用到數(shù)學(xué)方面的知識(shí),包括碰撞、軌跡變化等等,而且由于游戲的速度比較快,畫面上的元素同時(shí)出現(xiàn)的數(shù)目又比較多,所以控制起來還是比較復(fù)雜的,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論