曲蘊慧
(西安醫(yī)學(xué)院公共課部計算機教研室,陜西西安 710021)
Android[1]是一種以Linux為基礎(chǔ)的開放源代碼操作系統(tǒng),主要用于便攜設(shè)備。Android操作系統(tǒng)最初由Andy Rubin開發(fā),早期主要支持手機。2005年由Google收購注資,并組建開放手機聯(lián)盟進行改良,逐漸擴展到平板電腦及其他領(lǐng)域。2011年初,Android在全球的市場份額首次超過塞班系統(tǒng),躍居全球第一。2012年7月數(shù)據(jù),Android占據(jù)全球智能手機操作系統(tǒng)市場份額的59%,而國內(nèi)市場占有率為76.7%。故基于Android系統(tǒng)開發(fā)軟件,具有更廣泛的使用性。
Android的開發(fā)支持多種操作系統(tǒng)[2-3]:Windows、Mac和Linux等。文中在Windows7操作系統(tǒng)下進行開發(fā)。
Android開發(fā)所需的工具為:(1)JDK。Java開發(fā)工具包,Android應(yīng)用軟件大部分由Java語言所編寫,因此開發(fā)Android應(yīng)用程序首先需要Java開發(fā)包的支持。(2)Eclipse。Android的集成開發(fā)環(huán)境Eclipse提供了專用的開發(fā)插件 ADT(Android Development Kit),對Android的開發(fā)必須要有Eclipse的支持。(3)Android SDK(Software Development Kit)軟件開發(fā)工具包。被軟件開發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺及操作系統(tǒng)等建立應(yīng)用軟件開發(fā)工具的集合[4]。
游戲主流程如圖1和圖2所示。其中圖2為圖1的補充,是玩家進入游戲后的流程圖[5]。
圖1 主流程圖
圖2 主流程圖2
游戲使用SurfaceView作為主要視圖的基類,使用雙緩沖技術(shù)實現(xiàn)界面繪制。根據(jù)在游戲中的不同功能,將其劃分為控制調(diào)度模塊、聲音播放模塊、圖形界面模塊、邏輯計算模塊和動畫效果模塊[6]。游戲總體功能架構(gòu)如圖3所示。
圖3 游戲總體功能架構(gòu)圖
2.3.1 游戲主體類設(shè)計
游戲主體類設(shè)計主要分為以下幾個模塊[7-8]:(1)控制調(diào)度模塊。MainActivity:主要實現(xiàn)游戲狀態(tài)的轉(zhuǎn)換,控制各界面間的切換。(2)圖形界面模塊。LogosView:實現(xiàn)游戲歡迎界面的動畫效果,同時引出后續(xù)內(nèi)容。MainMenu:負責(zé)游戲主菜單界面的展示,并對不同按鈕事件進行監(jiān)聽,同時響應(yīng)相對應(yīng)的邏輯。MySurfaceView:負責(zé)游戲界面的展示,并在不斷的繪制所展示狀態(tài)的變化。各組件相關(guān)類:負責(zé)游戲中各個組件的繪制、更新等。(3)邏輯運算模塊。Cube:負責(zé)判斷積木是否到達目的位置或翻轉(zhuǎn)到地圖以外。(4)動畫效果模塊。WinDrop:實現(xiàn)進入獲勝界面前的相關(guān)動畫;DropOff:實現(xiàn)進入失敗界面前的相關(guān)動畫;LogosView:實現(xiàn)游戲歡迎界面的動畫效果。
2.3.2 游戲界面相關(guān)類關(guān)系
游戲界面繪制是將各個獨立的組件相結(jié)合,進而繪制出的,其中含一個主控制類,即MySurfaceView類在本游戲中,主要負責(zé)組件的協(xié)調(diào)、繪制。
對于Android軟件的測試工具可分為兩種:一是通過安裝AVD、進行測試;二是直接通過Android手機進行測試。本設(shè)計中,選用通過AVD進行測試。
啟動模擬器,進入游戲主菜單界面,其中包括對游戲操作的多項選擇,如圖4所示。
圖4 游戲主菜單界面
文中以“旋轉(zhuǎn)積木”游戲為例,介紹了基于Android系統(tǒng)手機游戲設(shè)計的總體流程,并詳細介紹了游戲框架設(shè)計及各類模塊的具體功能實現(xiàn)。在設(shè)計開發(fā)的同時,著重介紹了游戲中所使用的Android關(guān)鍵技術(shù),利用該技術(shù)對游戲界面進行繪制,在游戲中通過OpenGL進行3D繪圖,增強了游戲界面的感染力,同時還廣范應(yīng)用多線程機制,使得多個任務(wù)并發(fā)處理,提高了游戲效率,為玩家提供了較好的用戶體驗。
[1]RICK R.Android應(yīng)用開發(fā)[M].李耀亮,譯.北京:人民郵電出版社,2010.
[2]楊豐盛.Android應(yīng)用開發(fā)揭秘[M].北京:機械工業(yè)出版社,2010.
[3]裴佳迪,馬超,孫仁貴.Android應(yīng)用開發(fā)全程實錄[M].北京:人民郵電出版社,2012.
[4]李寧.Android開發(fā)權(quán)威指南[M].北京:人民郵電出版社,2012.
[5]吳亞峰,蘇亞光.Android游戲開發(fā)大全[M].北京:人民郵電出版社,2012.
[6]韋斯.數(shù)據(jù)結(jié)構(gòu)與算法分析Java語言描述[M].馮瞬璽,譯.北京:機械工業(yè)出版社,2009.
[7]陶漪,惲如偉.教育游戲設(shè)計理論的分析與運用[J].遠程教育雜志,2008(2):75-78.
[8]范良辰.RPG電子教育游戲設(shè)計模式的構(gòu)建[J].遠程教育雜志,2008(6):71-75.