android_吃豆人畢業(yè)設計開題報告、文獻綜述_第1頁
已閱讀1頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  畢業(yè)設計(論文)開題報告</p><p>  (含文獻綜述、外文翻譯)</p><p>  題 目 基于Android手機平臺的吃豆人游戲設計與開發(fā) </p><p><b>  畢業(yè)設計(論文)</b></p><p><b>  開 題 報 告</b></p

2、><p> ?。òㄟx題的意義、可行性分析、研究的內(nèi)容、研究方法、</p><p>  擬解決的關鍵問題、預期結(jié)果、研究進度計劃等)</p><p>  1. 選題的背景和意義</p><p><b>  選題的背景</b></p><p>  目前隨著移動設備越來越普及以及移動設備的硬件的提升,移動

3、設備的功能越來越完善,他的系統(tǒng)平臺也日漸火熱起來。目前國內(nèi)最常見的移動系統(tǒng)平臺有Symbian,iPhone,Windows Phone以及當下正在逐步興起的Android。目前為止國內(nèi)已經(jīng)有很多Android系統(tǒng)的用戶。截止2010年第二季度Android系統(tǒng)的國內(nèi)市場占有率已經(jīng)過10%,在西歐以及北美智能手機市場占有率也在20%左右??梢夾ndroid系統(tǒng)正在崛起之中。但是對于Android系統(tǒng)的應用和開發(fā)在國內(nèi)仍然屬于起步和探索階

4、段。急需要大量的相關技術和人員的投入。</p><p>  下面首先介紹一下Android系統(tǒng)。Android是基于Linux內(nèi)核的軟件平臺和操作系統(tǒng),是Google在2007年11月5日公布的手機系統(tǒng)平臺,早期由Google開發(fā),后由(Open Handset Alliance)開發(fā)。它采用了軟件堆層(Software stack,又名以軟件疊層)的架構(gòu),主要分為三部分。低層以Linux核心工作為基礎,只提供

5、基本功能;其他的應用軟件則由各公司自行開發(fā),以Java作為編寫程式的一部分[1]。</p><p>  手機游戲作為Android系統(tǒng)平臺的一個重要組成部分,正在被越來越多的人所重視。全球在使用的移動電話已經(jīng)超過10億部,而且這個數(shù)字每天都在不斷增加。在除美國之外的各個發(fā)達國家,手機用戶都比計算機用戶多。手機游戲潛在的市場比其他任何平臺,比如PlayStation和GameBoy都要大。</p>&

6、lt;p>  在學院和老師的支持和幫助下,我所在的手機開放實驗室在2009年底就開始對Android系統(tǒng)進行深入細致的研究。在國內(nèi)Android相關領域?qū)儆谳^早研究的一批,經(jīng)過老師和同學一年多的努力,在這個方面也積累了一定的知識和技能。所以希望通過這篇論文的研究,展示我這一年多來學習與實踐的成果,給本科四年的學習交上一份圓滿的答卷。</p><p><b>  國內(nèi)外研究現(xiàn)狀</b>&

7、lt;/p><p>  1.2.1 國內(nèi)外手機系統(tǒng)現(xiàn)狀</p><p>  目前國外各軟硬件廠商已經(jīng)推出過多款手機操作系統(tǒng)。下面簡單介紹一下現(xiàn)主流手機操作系統(tǒng)。</p><p>  現(xiàn)階段使用較廣泛大家也相對熟悉的手機操作系統(tǒng)是由諾基亞公司主導推出的Symbian操作系統(tǒng)。Symbian是為手機而設計的操作系統(tǒng),它是一個實時性,多任務的純32位嵌入式的操作系統(tǒng),具有低能

8、耗,內(nèi)存占用較少等特點?,F(xiàn)在流行的Symbian系統(tǒng)有以下四個版本,分別為S40、S60(第二版)、S60(第三版)、S60(第五版)。S60(第五版)為觸摸屏手機版本[2]。</p><p>  iOS是由蘋果公司為iPhone開發(fā)的操作系統(tǒng)。它主要是給iPhone、iPod touch以及iPad使用。就像其基于的Mac OS X操作系統(tǒng)一樣,它也是以Darwin為基礎的。iOS的系統(tǒng)架構(gòu)分為四個層次:核心操

9、作系統(tǒng)層(the Core OS layer),核心服務層(the Core Services layer),媒體層(the Media layer),可輕觸層(the Cocoa Touch layer)。系統(tǒng)操作占用大概240MB的存儲器空間[3]。</p><p>  相對國外手機系統(tǒng)百花齊放的局面,國內(nèi)手機操作系統(tǒng)則處于剛起步的階段。目前國內(nèi)還沒有自主研發(fā)并商品化的手機操作系統(tǒng)。當然近些年來國內(nèi)企業(yè)和我國

10、政府在這方也投入了大量的人力和物力。同時也取得了一定成果。</p><p>  在2009年8月,由中國移動所主導開發(fā)OPhone平臺面世。OPhone平臺采用開源的Linux作為系統(tǒng)內(nèi)核,借鑒并兼容Android平臺,集成靈活高效的Java應用框架,充分借鑒當下主流手機操作系統(tǒng)所具有的良好用戶體驗,提供了一套完整的電話解決方案和各類移動數(shù)據(jù)業(yè)務解決方案[4]。</p><p>  1.2

11、.2 國內(nèi)外手機應用現(xiàn)狀</p><p>  隨著3G在中國的全面啟動,它所帶來的巨大機遇和新生力量,大規(guī)模的網(wǎng)絡建設正不斷深入展開。但不可否認的是我國在通信領域中相比許多發(fā)達國家仍然存在著不小的差距,就在國人還在為EDGE(即增強型數(shù)據(jù)速率GSM演進技術。EDGE是一種從GSM到3G的過渡技術)[5]這種傳輸速度僅能達到384KB/秒的2.75G過渡技術而欣喜的時候,國外早已開始試行HSDPA(高速下行分組接入

12、,是一種移動通信協(xié)議,亦稱為3.5G)這種3.5G技術,傳輸速度更可達到驚人的數(shù)兆每秒,而基于其上所開發(fā)的延伸功能更是數(shù)不勝數(shù),所以國內(nèi)外手機應用也存在的較大的差異。但國內(nèi)外對手機應用的需求方向是大致相似的,主要集中在信息服務,娛樂,學習這些方面。</p><p>  目前手機應用中數(shù)量最大,使用人數(shù)最多的應用類型是手機游戲。該類應用作為傳統(tǒng)手機應用,在各個平臺上發(fā)展已近相對完善,手機上對各種流媒體的播放也已完美

13、的支持。各類傳統(tǒng)PC游戲廠商也已進入手機領域。根據(jù)iResearch艾瑞市場咨詢整理的國外數(shù)據(jù)顯示,全球手機游戲市場的收入規(guī)模在2005年達到了102億美元, 2008年達到520億美元[6] 。07年之后,手機游戲市場增速開始減緩,傳統(tǒng)手機游戲逐漸顯現(xiàn)頹勢,市場增長主要由基于智能手機平臺的游戲所帶動。所以Android游戲進入智能手機游戲市場,必將打破原有格局,開辟手機游戲新紀元。</p><p>  其他方面

14、較為熱門的有基于地理位置的信息服務(Location Based Service LBS)它是通過電信移動運營商的無線電通訊網(wǎng)絡(如GSM網(wǎng)、CDMA網(wǎng))或外部定位方式(如GPS)獲取移動終端用戶的位置信息(地理坐標,或大地坐標),在GIS(Geographic Information System,地理信息系統(tǒng))平臺的支持下,為用戶提供相應服務的一種增值業(yè)務。例如手機定位,導航服務[7]。</p><p>  

15、近年來十分熱門的網(wǎng)絡社交服務(Social Networking Services)也已進入到手機客戶端領域。例如國內(nèi)有名的社交網(wǎng)站人人網(wǎng)已經(jīng)針對Iphone,android,塞班等手機平臺推出了手機客戶端。國外最大的社交Fackbook也已經(jīng)傳出正在進行針對手機的產(chǎn)品的研發(fā)。Twiter,Myspace等國外知名社交類網(wǎng)站都已經(jīng)推出手機版。口碑網(wǎng)在今年也已經(jīng)推出針對多個手機平臺的客戶端程序。MSN,QQ等即時通信類的應用也已經(jīng)在各個主

16、流手機平臺推出。</p><p>  手機辦公類軟件在手機上也正日趨完善,在手機上編輯查看各類文檔已經(jīng)實現(xiàn),在android平臺上的QuickOffice就是這樣的軟件。在Google Market(一個谷歌針對android系統(tǒng)用戶所開發(fā)的應用商場)上已經(jīng)有過萬的企業(yè)應用辦公套件。</p><p><b>  1.3 發(fā)展趨勢</b></p><

17、p>  根據(jù)對谷歌電子市場中的Android應用程序的調(diào)查發(fā)現(xiàn),該市場中絕大部分是游戲軟件。Android平臺的開放性及服務免費大大降低了應用開發(fā)的門檻,使得開發(fā)者在游戲開發(fā)中投入成本相對較少。而隨著技術的發(fā)展手機終端的特性使其具備了地理位置、重力感應、觸摸控制等固定終端所不具備的特性,更容易開發(fā)出極具創(chuàng)意的游戲產(chǎn)品。Android設備數(shù)量的持續(xù)增長使得這個市場對優(yōu)質(zhì)游戲的需求越來越大。</p><p> 

18、 Android平臺上的游戲相比應用軟件,不需要進行嚴格的市場細分,不需要針對目標用戶量身定制。這是因為游戲玩家的核心需求是統(tǒng)一的,那就是:娛樂與打發(fā)時間(乃至更高層面的競技需求和群體認同需求),這種需求附著于特定的社會發(fā)展階段,不受地域的限制,甚至于能夠穿透文化壁壘。因此,絕大多數(shù)種類的游戲都具備傳染性與普適性,每一個售出的游戲都像一個火種,將會點燃周圍潛在玩家的激情,激情的火焰迅速蔓延,最終吞噬整個需求市場,當然前提是開發(fā)的游戲是高

19、質(zhì)量的。</p><p>  此外,幾乎每一個Android手機用戶都是游戲的需求者,都是潛在的顧客,現(xiàn)今的1000多萬Android用戶不過是冰山一角,另根據(jù)IDC機構(gòu)預計在2013年Android手機用戶將達到6800萬,所以Android手機游戲的需求也將不斷擴充。</p><p>  在Android系統(tǒng)面世短短兩年時間內(nèi), Android以勢如破竹之勢,迅速的蠶食著其他手機廠商在

20、市場中的份額,而終端市場幾乎每隔一天就會有新的Android機型問世。另據(jù)國外媒體報道,Android應用軟件數(shù)量已經(jīng)突破13萬大關。業(yè)內(nèi)由此預期,Android平臺可能會在未來幾個月內(nèi)將躋身手機操作系統(tǒng)前三甲,并獲得亞軍的地位。</p><p>  雖然Android系統(tǒng)前景廣闊,但是基于該平臺的手機游戲開發(fā)也面臨著各種問題。平臺硬件差異,代碼分裂,用戶沒有良好的付費習慣等等缺點一直被Android游戲開發(fā)者詬

21、病,但是Android快速的發(fā)展卻使開發(fā)者又無法放棄這塊大蛋糕,所以其他手機平臺的開發(fā)者也慢慢轉(zhuǎn)向Android游戲開發(fā)。</p><p>  綜上所述,在今后幾年內(nèi)Android游戲應用將會成為手機應用市場的主流應用,并且需要大量人力物力的投入。</p><p><b>  2.研究的基本內(nèi)容</b></p><p>  根據(jù)近一年來學習An

22、droid平臺游戲動畫的經(jīng)驗,結(jié)合現(xiàn)在已有技術,基于游戲動畫設計的基本原理。設計一個基于Android平臺的吃豆人的游戲應用。</p><p>  設計制作吃豆人游戲的目的在于主要實現(xiàn)一套Android游戲開發(fā)的解決方案,解決目前在Android游戲開發(fā)中所面臨的幾大問題。主要有游戲的關卡切換,游戲地圖數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)、應用多種手機內(nèi)置傳感器進行游戲控制、游戲動畫的實現(xiàn)、基于圖形的碰撞檢測、數(shù)據(jù)在手機系統(tǒng)和網(wǎng)絡上存

23、儲及人工智能的實現(xiàn)。</p><p>  解決這些在Android游戲開發(fā)中所共同面臨的問題,對于Android游戲的開發(fā)效率與Android游戲的質(zhì)量有著極大的幫助作用。</p><p><b>  2.1 基本框架</b></p><p>  首先基于Android平臺特性,把本應用主要劃分為五大模塊分別為:程序控制界面、數(shù)據(jù)持久化模塊,網(wǎng)

24、絡數(shù)據(jù)傳輸模塊,游戲邏輯模塊,游戲音效模塊。</p><p>  程序體系結(jié)構(gòu)如下圖所示:</p><p>  圖1.1 程序體系結(jié)構(gòu)圖</p><p>  本程序主要通過程序控制界面和用戶進行交互, 用戶通過該界面上的相應選項進行游戲,控制怪物進行游戲,提交游戲積分,存儲游戲積分,播放游戲音樂等各項功能。程序控制界面同時也負責各模塊間的數(shù)據(jù)傳輸。</p>

25、;<p>  游戲邏輯模塊主要功能是負責游戲畫面的繪制,游戲中敵對怪物人工智能的實現(xiàn),以及用戶輸入的控制的響應(如鍵盤,導航鍵和屏幕輸入)。 本模塊主要解決游戲引擎的實現(xiàn)、應用多種手機內(nèi)置傳感器進行游戲控制和游戲的人工智能的問題,實現(xiàn)該模塊能使用戶得到更好的動畫體驗和游戲操控體驗,明顯提升游戲的用戶好感動和實用性。</p><p>  下圖是游戲邏輯塊的體系結(jié)構(gòu),游戲邏輯模塊主要分為人工智能、游戲繪

26、圖引擎和人機交互控制。</p><p>  圖1.2 吃豆人程序游戲邏輯模塊結(jié)構(gòu)圖</p><p>  數(shù)據(jù)持久化模塊主要負責游戲中所產(chǎn)生的內(nèi)存數(shù)據(jù),轉(zhuǎn)化成可存儲的XML數(shù)據(jù)。該模塊包含XML數(shù)據(jù)結(jié)構(gòu)定義、XML生成和XML數(shù)據(jù)解析。本模塊的主要解決Android系統(tǒng)中數(shù)據(jù)存儲的問題。</p><p>  具體結(jié)構(gòu)如下圖所示:</p><p>

27、;  圖1.3吃豆人程序體數(shù)據(jù)持久化圖</p><p>  網(wǎng)絡數(shù)據(jù)傳輸模塊主要功能為提交用戶游戲評分至網(wǎng)絡服務器中。該模塊主要用來實現(xiàn)網(wǎng)絡積分榜功能。讓原本單機的游戲具有網(wǎng)絡競賽的功能。提升游戲的可玩性,吸引更多用戶使用游戲。</p><p>  游戲音效模塊提供游戲音樂的播放和關閉的功能,其向主控制界面暴露開啟和關閉音樂的接口。</p><p>  2.2 研究

28、的重點和難點</p><p>  根據(jù)本人在Android游戲編程上所遇到的問題,現(xiàn)將研究吃豆人游戲應用中所遇到的問題總結(jié)如下:</p><p> ?。?)基于Android游戲動畫的實現(xiàn)。所有計算機游戲的圖形的核心都是動畫,在J2ME手機游戲中,MDIP2.0以上版本提供了一個有助于游戲制作的開發(fā)包,該開發(fā)包核心為Sprite,使用該類能夠簡單管理動畫角色的圖像[9]。基于此我將深入研究

29、J2ME中Sprite類在Android平臺上移植和使用的可能性。提高Android游戲中動畫展示的效果和效率,解決Android系統(tǒng)中動畫實現(xiàn)的問題。</p><p> ?。?)游戲地圖的數(shù)據(jù)結(jié)構(gòu)的表示。解決此問題主要解決在Android平臺中如何高效的對復雜的游戲地圖進行存儲和解析,合理有效的數(shù)據(jù)結(jié)構(gòu)對提高游戲整體的效率極大地幫助。</p><p> ?。?)游戲動畫中的碰撞檢測問題。

30、在游戲中,經(jīng)常需要進行碰撞檢測,例如在吃豆人游戲中如何檢測到吃豆人吃到豆子、吃豆人是否被怪物吃掉,都是檢測兩個物體是否發(fā)生碰撞,然后根據(jù)檢測的結(jié)果做出不同的處理。進行碰撞檢測的物體可能不同的形狀,這就給碰撞檢測的算法帶來了許多的問題。如何高效正確的進行圖像的碰撞檢測將是我吃豆人游戲中解決的重點問題。</p><p> ?。?)游戲人工智能算法的實現(xiàn)。在游戲軟件中,游戲的人工智能的高低直接決定了游戲互動性和可玩性。

31、而尋路問題又是人們研究的熱點問題之一。在吃豆人游戲中,需要設計怪物主動跟蹤玩家的人工智能算法,并且可以通過參數(shù)對怪物的“聰明度”進行調(diào)節(jié)。</p><p>  (5)人機交互界面的友好性。優(yōu)美的圖像界面將會給使用者帶來舒適和美感,在吃豆人游戲中,設計出時尚美觀的界面和游戲圖片,給使用者留下良好的印象,提高游戲的品質(zhì)。</p><p>  2.3 擬解決的關鍵問題</p>&l

32、t;p>  關于Android游戲動畫的解決方案,我準備實現(xiàn)一個相對高效并且簡單易用的游戲引擎,或者從其他手機平臺移植相對較為成熟的游戲動畫引擎。解決此問題可以為吃豆人游戲以及其他類似的動畫游戲提供流暢的動畫效果,實現(xiàn)游戲引擎同時也可以提高游戲動畫的代碼復用率,提高游戲編程的效率。</p><p>  深入理解Android 系統(tǒng)的Dalvik虛擬機工作機制。由于Android平臺使用Java語言進行開發(fā),

33、谷歌的工程師改寫了Java ME的虛擬機。眾所周知虛擬機的垃圾回收會造成系統(tǒng)資源的消耗,影響游戲動畫的流暢性。解決虛擬機垃圾回收時所造成的占用系統(tǒng)資源較大的問題,可以提高游戲的流暢性,提升用戶的游戲體驗。</p><p>  解決游戲人工智能的解決方案,吃豆人游戲中,地圖尋路問題并非如此簡單,必須考慮多方面的因素,比如游戲地圖的文件結(jié)構(gòu)、是否可通以及目標點所在的磚塊是否可通等。解決吃豆人游戲中的地圖尋徑問題。并查

34、找A*,啟發(fā)式搜索算法[10],遺傳算法等算法在本應用中實現(xiàn)的可能性。</p><p>  觸屏以及重力感應器等操控方式的處理問題。在Android平臺中相對傳統(tǒng)的手機系統(tǒng),Android系統(tǒng)提供多種傳感器的調(diào)用接口。探索使用手機導航球,重力感應,觸屏操作等新型操控模式提高用戶操作體驗。</p><p>  3.研究的方法及措施</p><p>  利用網(wǎng)絡查閱國內(nèi)

35、外相關資料,利用數(shù)據(jù)庫資源瀏覽大量的期刊與文獻,進行分析與研究。深入國內(nèi)外android系統(tǒng)開發(fā)者社區(qū),與一線開發(fā)者進行交流,獲取更多信息與技術。 應用擬采用Java實現(xiàn),模塊化結(jié)構(gòu),獨立開發(fā)各個功能模塊,盡量降低各模塊之間的耦合,在各個功能模塊實現(xiàn)的基礎上構(gòu)建靈活方便的UI界面。 </p><p><b>  4.預期研究成果</b></p><p>  在新的Go

36、ogle Android智能手機平臺上實現(xiàn)吃豆人游戲,游戲分為十個關卡,每個關卡經(jīng)過仔細的設計,按照難度依次遞進。游戲的主要功能包括:每關有3個怪物,吃豆人在設計的關卡地圖中吃光所有的豆子和其他特殊作用的物品為過關。吃豆人在運動過程中如果和怪物相遇那么吃豆人死亡;游戲提供多種道具,包括加分道具,怪物減速道具,生命道具,吃豆人吃到每個不同道具時根據(jù)道具的預定義行為進行處理;吃豆人控制方式包括使用觸屏控制,軟鍵盤以及重力感應器;支持背景音樂

37、,暫停等操作;支持全球排行榜;通關后地圖重新開始,不過每關的怪物增加為4個。</p><p>  完成畢業(yè)論文和畢業(yè)設計以及畢業(yè)答辯。</p><p>  開發(fā)游戲能發(fā)布到國內(nèi)外公共Android應用平臺上,例如移動的MM市場和谷歌的電子市場。</p><p>  為本應用申請軟件著作權(quán)。</p><p>  5.研究工作進度計劃</p

38、><p>  2010年第7學期 </p><p>  第6-9周 查閱文獻</p><p>  第10-12周 文獻綜述和外文翻譯</p><p>  第12-15周 撰寫開題報告</p><p>  第16-17周 程序設計與開發(fā)</p><p>  2011年第8學期 </p&g

39、t;<p>  第1-9周 程序設計與開發(fā)</p><p>  第10-12周 撰寫畢業(yè)論文</p><p>  第13-14周 論文的答辯與修改</p><p><b>  畢業(yè)設計(論文)</b></p><p><b>  文 獻 綜 述</b></p><

40、p> ?。ò▏鴥?nèi)外現(xiàn)狀、研究方向、進展情況、存在問題、參考依據(jù)等)</p><p>  Android手機游戲開發(fā)研究現(xiàn)狀</p><p>  1. 國內(nèi)外研究現(xiàn)狀</p><p>  今天的手機不在是單純的通訊工具,已經(jīng)成為了集通訊、PIM、音樂、電影、游戲娛樂等為一體的個人便攜終端。手機在通訊功能以外的綜合附加值越高,加之便攜的特性,使得人們對手機的依賴

41、性越強[12]。</p><p>  游戲作為日常休閑的娛樂活動,歷經(jīng)了電視游戲、電腦單機游戲、電腦網(wǎng)絡游戲這幾個階段?,F(xiàn)在,游戲作為一個產(chǎn)業(yè),可以看出游戲市場有著非常龐大的需求。</p><p>  手機游戲的出現(xiàn),給手機和游戲市場帶來了新的活力,由于娛樂時不受時間和地點的限制,手機游戲已經(jīng)成為大眾娛樂的又一新選擇。隨著科技的發(fā)展,現(xiàn)在手機的功能也越來越多,越來越強大。而手機游戲也遠遠不

42、是我們印象中的什么“俄羅斯方塊”“貪吃蛇”之類畫面簡陋,規(guī)則簡單的游戲,進而發(fā)展到了可以和掌上游戲機媲美,具有很強的娛樂性和交互性的復雜形態(tài)了。</p><p>  近期在iPhone和Android平臺上火爆的游戲憤怒的小鳥游戲,采用優(yōu)美的動畫,先進的物理游戲引擎以及獨特的創(chuàng)意,成為了本年度最受用戶喜歡的手機游戲之一[13]。其制作公司僅在Android平臺的廣告收入就達100萬美元每月。</p>

43、<p>  可見手機游戲已經(jīng)從單一內(nèi)容到多元內(nèi)容,從簡單畫面和音樂進入到了復雜的多媒體效果之中。為了實現(xiàn)手機游戲豐富的動畫效果和良好的用戶體驗,一些原本在PC上的游戲動畫引擎也被移植到了手機這個平臺上,例如Androids上的OpenGL ES 游戲動畫庫(OpenGL for Embedded Systems 是OpenGL 三維圖形 API 的子集,針對手機、PDA和游戲主機等嵌入式設備而設計[14])、BOX2D物理游

44、戲引擎(該引擎主要用來模擬物理碰撞和物理運動)。</p><p>  在手機游戲動畫效果提升的同時,新硬件功能(比如重力感應、多點觸控)的加入,也促使了一些創(chuàng)新的手機游戲的推出。如重力滾動球的游戲就是根據(jù)手機重力感應功能編寫而成。IPhone上的街頭霸王、刺客信條等游戲就使用到了多點觸控這一功能。</p><p>  綜上所述現(xiàn)階段手機游戲的開發(fā)也進入了一個新的階段,在這個階段的開發(fā)中手機

45、游戲不僅需要豐富的編程經(jīng)驗,還需要對新型手機特點,用戶需求新的娛樂需求的進一步發(fā)掘,從而開發(fā)出符合用戶使用習慣,吸引用戶的游戲。</p><p><b>  2.研究方向</b></p><p>  2.1 Android系統(tǒng)架構(gòu)研究</p><p>  Android平臺是一組面向移動設備的軟件包,它包含了一個操作系統(tǒng)、中間件和關鍵應用程序。

46、Android是一組面向移動設備的軟件包(目前不僅限于移動手機領域,Android也已經(jīng)進入其他嵌入式領域,如汽車中控臺,MP3/MP4等),包含了一個操作系統(tǒng),中間件和關鍵應用程序。Android SDK 的預覽版提供了必需的開發(fā)工具和應用程序接口,基于這些,我們就可以使用Java編程語言在Android平臺上開發(fā)應用程序了[15]。</p><p>  Android系統(tǒng)架構(gòu)基本分為應用(Appli

47、cations),應用框架(Application Frameworks),庫函數(shù)(Libraries),運行時環(huán)境(Android Runtime),Linux 內(nèi)核(Linux Kernel)。下方圖表顯示了Android操作系統(tǒng)的主要組件[15]。</p><p>  圖2.1 Android系統(tǒng)架構(gòu)圖</p><p><b>  1.應用程序</b><

48、/p><p>  Android會同一系列核心應用程序包一起發(fā)布,該應用程序包包括email客戶端,SMS短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應用程序都是使用JAVA語言編寫的。</p><p><b>  2.應用程序框架</b></p><p>  開發(fā)人員也可以完全訪問核心應用程序所使用的API框架。該應用程序的架構(gòu)設計簡

49、化了組件的重用;任何一個應用程序都可以發(fā)布它的功能塊并且任何其它的應用程序都可以使用其所發(fā)布的功能塊(不過得遵循框架的安全性限制)。同樣,該應用程序重用機制也使用戶可以方便的替換程序組件。</p><p><b>  3.系統(tǒng)運行庫</b></p><p>  Android 包含一些C/C++庫,這些庫能被Android系統(tǒng)中不同的組件使用。它們通過 Android

50、 應用程序框架為開發(fā)者提供服務。Android 包括了一個核心庫,該核心庫提供了JAVA編程語言核心庫的大多數(shù)功能。</p><p>  4.Android運行時</p><p>  每一個Android應用程序都在它自己的進程中運行,都擁有一個獨立的Dalvik虛擬機實例。Dalvik被設計成一個設備可以同時高效地運行多個虛擬系統(tǒng)。 Dalvik虛擬機執(zhí)行(.dex)的Dalvik可執(zhí)行

51、文件,該格式文件針對小內(nèi)存使用做了優(yōu)化。同時虛擬機是基于寄存器的,所有的類都經(jīng)由JAVA編譯器編譯,然后通過SDK中 的“dx” 工具轉(zhuǎn)化成“.dex”格式由虛擬機執(zhí)行。</p><p>  Dalvik虛擬機依賴于linux內(nèi)核的一些功能,比如線程機制和底層內(nèi)存管理機制。</p><p>  5.Linux 內(nèi)核</p><p>  Android 的核心系統(tǒng)服務

52、依賴于 Linux 2.6 內(nèi)核,如安全性,內(nèi)存管理,進程管理, 網(wǎng)絡協(xié)議棧和驅(qū)動模型。 Linux 內(nèi)核也同時作為硬件和軟件棧之間的抽象層。</p><p>  2.2 Android游戲開發(fā)研究</p><p>  Android系統(tǒng)開發(fā)采用JAVA語言,使用Google Android SDK和Eclipse IED進行應用程序的開發(fā)。在Android SDK 附帶 Android

53、Emulator,是一個運行在PC端的手機模擬器,在開發(fā)中可以使用這個模擬器來運行自己編寫的應用程序。 </p><p>  2.2.1 Android游戲引擎研究</p><p>  簡單地說,游戲引擎就是“用于控制所有游戲功能的主程序”,從計算碰撞、物理系統(tǒng)和物體的相對位置,到接受玩家的輸入,以及聲音的輸出等等功能都是游戲引擎需要負責的事情。它扮演著中場發(fā)動機的角色,把游戲中的所有元素

54、捆綁在一起,在后臺指揮它們有序地工作[16]。</p><p>  經(jīng)過不斷的進化,如今的手機游戲引擎已經(jīng)發(fā)展為由多個子系統(tǒng)共同構(gòu)成的復雜系統(tǒng),從建模、動畫到光影、粒子特效,從物理系統(tǒng)、碰撞檢測到文件管理、網(wǎng)絡特性,還有專業(yè)的編輯工具和插件。Android平臺經(jīng)過2年的發(fā)展,通過移植其他平臺優(yōu)秀的游戲引擎也出現(xiàn)了多款游戲引擎。例如由國人開發(fā)的LGame(基于Graphics API)游戲引擎,Rokon游戲引擎(

55、基于OpenGL ES),WiEngine游戲引擎等等。</p><p>  但是這些引擎總是存在這樣或者那樣的問題,例如缺少開發(fā)文檔,引擎設計不完善。特別是這些游戲引擎在處理復雜圖形時效果始終不夠理想。 雖然目前手機硬件平臺相比以前有了較大的發(fā)展和進步,但是對于一些復雜游戲圖形的處理仍然顯得有些“不給力”。</p><p>  為了提高游戲引擎處理復雜圖形的效率一些游戲引擎也提出了一些新

56、的解決方案。例如WiEngine2.0版本中就采用Java JNI 調(diào)用C++ Native代碼進行編寫,這一方法提高了處理復雜游戲動畫的效率。采用C++編寫雖然提高了代碼執(zhí)行的效率,但是增加了代碼編寫的時間,同時也給程序調(diào)錯和移植帶來了巨大的問題。</p><p>  2.2.2 Android游戲人工智能算法的研究</p><p>  游戲中的人工智能(Artificial Intel

57、ligence,簡稱AI),是指用來控制游戲中各種活動對象行為的邏輯。大部分游戲,特別是角色扮演類游戲都需要人工智能,在游戲中玩家是主要人物,而游戲中的其他人物由人工智能操縱。游戲開發(fā)領域中的人工智能設計越來越被游戲開發(fā)者和玩家重視,因為它能給玩家提供更大的挑戰(zhàn)性,從而增加游戲的可玩性,一款游戲的生命力正在于游戲的可玩性。</p><p>  在吃豆人應用中路徑搜索是游戲AI的需要解決最基本的問題之一。<

58、/p><p>  在當今游戲工業(yè)界,A*算法是被大家最廣泛使用的人工智能尋路算法,也是最有效的最短路徑搜索算法之一。A*算法實際上是一種基于廣度優(yōu)先搜索的啟發(fā)式搜索算法,通常采用估價函數(shù)對當前的搜索位置進行評估。標準的A*算法根據(jù)Closed表對路徑進行逆向提取,當存在死路的時,它會把走向死路的點也包含進去,造成走彎路的現(xiàn)象,從而能得到解[17]。 </p><p>  另外在游戲中經(jīng)常使用的

59、AI算法還有遺傳算法,他是一種隨機的群體搜索算法,它是模擬達爾文的遺傳選擇和自然淘汰的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優(yōu)解的方法[18]。</p><p><b>  3.進展情況</b></p><p>  由于手機本身CPU計算條件的限制,A*和遺傳算法是否可以在Android手機平臺上高效的使用還有待進一步的檢驗。通過在手機上實現(xiàn)這兩種算

60、法,比較其優(yōu)缺點,結(jié)合兩種算法的優(yōu)勢,設計一種高效的算法應用在吃豆人游戲中,將是我接下來的主要目標。</p><p>  對于游戲引擎的開發(fā)方面,著手研究Roken 游戲引擎,LGame游戲引擎,J2ME中的精靈類,通過參考其示例程序了解引擎原理及架構(gòu)。研究以上游戲引擎能否滿足吃豆人游戲動畫的需求,并且比較各個游戲引擎的性能。</p><p>  游戲操控方面參考Google Androi

61、d開發(fā)文檔,熟悉重力感應,多點觸控,方向鍵以及手機鍵盤的API,結(jié)合已有技術實現(xiàn)游戲操作的多元化。</p><p><b>  存在問題</b></p><p>  根據(jù)本人在Android游戲編程上所遇到的問題,現(xiàn)將研究吃豆人游戲應用中所遇到的問題總結(jié)如下:</p><p> ?。?)由于Google 對Android系統(tǒng)更新過快,目前市場上

62、流通的Android系統(tǒng)版本多達5種,由于高版本的系統(tǒng)對于低版本的系統(tǒng)并不兼容,所以給我們編程上帶來了諸多的問題,如何使編寫的程序在盡量多的系統(tǒng)上正確的運行將是我所解決的首要問題。</p><p> ?。?)在手機編程上另一個令人頭痛的問題是手機硬件上的差異(屏幕、處理器、內(nèi)存容量等)。由于硬件的差異,導致程序的移植性不強,相同的程序在相同系統(tǒng)版本的不同手機上不能正常運行,在編程中如何對代碼進行優(yōu)化,使我的程序能

63、在更多的手機上正常運行也是現(xiàn)在所面臨的重要問題之一。</p><p>  (3)基于Android游戲動畫的實現(xiàn)的問題。所有計算機游戲的圖形的核心都是動畫,在J2ME手機游戲中,MDIP2.0以上版本提供了一個有助于游戲制作的開發(fā)包,該開發(fā)包核心為Sprite,使用該類能夠簡單管理動畫角色的圖像[11]?;诖宋覍⑸钊胙芯縅2ME中Sprite類在Android平臺上移植和使用的可能性。提高Android游戲中動

64、畫展示的效果和效率,解決Android系統(tǒng)中動畫實現(xiàn)的問題。</p><p>  (4)游戲動畫中的碰撞檢測問題。在游戲中,經(jīng)常需要進行碰撞檢測,例如在吃豆人游戲中如何檢測到吃豆人吃到豆子、吃豆人是否被怪物吃掉,都是檢測兩個物體是否發(fā)生碰撞,然后根據(jù)檢測的結(jié)果做出不同的處理。進行碰撞檢測的物體可能不同的形狀,這就給碰撞檢測的算法帶來了許多的問題。如何高效正確的進行圖像的碰撞檢測將是我吃豆人游戲中解決的重點問題。&

65、lt;/p><p> ?。?)游戲人工智能算法的實現(xiàn)問題。在游戲軟件中,游戲的人工智能的高低直接決定了游戲互動性和可玩性。而尋路問題又是人們研究的熱點問題之一。在吃豆人游戲中,需要設計怪物主動跟蹤玩家的人工智能算法,并且可以通過參數(shù)對怪物的“聰明度”進行調(diào)節(jié)。</p><p>  參考文獻(含開題報告和文獻綜述)</p><p>  [1] GONG Lei,ZHOU

66、Cong.Development and Research of Mobile Termination Application Based on Android[J]. Computer And Modernization,2008,8(1).</p><p>  [2]何偉 楊宗德 張兵等.基于SymbianOS的手機開發(fā)與應用[M].北京:人民郵電出版社,2006.3.</p><p>

67、;  [3] 百度百科 . iOS百科[EB/OL].</p><p>  [4] 百度百科. OPhone百科[EB/OL]. http//baike.baidu.com/view/2410021.htm,2010.12.</p><p>  [5] 李曉鶯.EDGE——增強型GSM的演進數(shù)據(jù)業(yè)務介紹[J].通信世界 ,2004,2(1).</p><p>  

68、[6] 殷福忠 孫立民.以“3S”集成技術為基礎的“LBS”極地應用研究[J] .</p><p>  地理信息世界.2008,(03).</p><p>  [7] 百度百科. 游戲引擎 [EB/OL].</p><p>  [8] 李峰.Symbian+OS游戲引擎的研究和應用[D] .成都:西南交通大學,2008 .</p><p>

69、;  [9] 劉志成.基于Sprite類的游戲動畫的實現(xiàn)[J].電腦編程技巧與維護,2010.5(1).</p><p>  [10] 陳和平.A*算法在游戲地圖尋徑中的應用與實現(xiàn)[J].計算機應用與軟件, 2005, 12 (1) . </p><p>  [11] 谷歌公司.Android 中文文檔[EB/OL].</p><p>  [12]百度文庫.手機游

70、戲未來發(fā)展趨勢預測 [EB/OL] .</p><p>  [13] 百度百科.Angry Birds百科[EB/OL]. </p><p>  [14] 百度百科.OpenGL ES百科[EB/OL].</p><p>  [15] 胡偉.Android系統(tǒng)架構(gòu)及其驅(qū)動研究[J] .廣州廣播電視大學學報,2008.8(1).</p><p&

71、gt;  [16] 陳凱.三維游戲引擎的設計與實現(xiàn)[D] .浙江:浙江大學,2007.6.</p><p>  [17] 楊科選.人工智能尋路算法及其在游戲中的應用研究[D] .長沙:中南大學 ,2009.6.</p><p>  [18] 張亮亮 夏正友.基于遺傳算法求解游戲關卡問題[J] .信息通信2009,3(1) .</p><p>  [19]Shane

72、 Conder.Android Wireless Application Development[M]. Boston :Addison-Wesley,2010.</p><p>  [20]Enck,W., Ongtang,M.,McDaniel,P.Understanding Android Security[J]. Security & Privacy, IEEE,2009,7(

73、1).</p><p>  [21]Sandeep Kumar. Location Based Services using Android[C]. Internet Multimedia Services Architecture and Applications (IMSAA), IEEE International Conference ,2009.</p><p>  [22]劉昌

溫馨提示

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

評論

0/150

提交評論