999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于IOS平臺的數獨游戲的設計與開發

2016-04-22 05:27:31錢麗丹
計算機時代 2016年4期

錢麗丹

摘 要: 以數獨游戲為切入點研究IOS平臺下的游戲開發技術。介紹了數獨游戲的起源與游戲規則,對系統進行功能模塊劃分,介紹了系統使用到的關鍵技術如Cocos2D游戲框架、舞蹈鏈算法等,給出了系統運行界面。該游戲可以在任何IOS移動終端上運行,界面美觀,性能穩定。

關鍵詞: IOS; 數獨游戲; Cocos2D游戲框架; 舞蹈鏈算法

中圖分類號:TP311 文獻標志碼:A 文章編號:1006-8228(2016)04-58-03

Development of Sudoku game for IOS

Qian Lidan

(Department of Information & Technology, ZheJiang Economic & Trade Polytechnic, Hangzhou, Zhejiang 310018, China)

Abstract: Taking Sudoku game as an entry point, the game development technology on IOS platform is studied. The origin and the play rules of the game are introduced in this paper, the system function module is divided and some key technologies such as Cocos2D, Dancing Links algorithm etc. are introduced, and the system operation interface are given. The game can be run on any IOS mobile terminal, with beautiful interface and stable performance.

Key words: IOS; Sudoku game; Cocos2D game framework; Dancing Links algorithm

0 引言

伴隨著智能手機普及和4G網絡的發展,中國的手機游戲市場得到了迅猛發展,尤其近四年以來發展更為迅速。在2011年整個中國手機游戲手場收入不過62.4億元,但是在2015年則達到了416億[1]。2014年手機游戲銷售收入首次超越網頁游戲,手機游戲成為了網絡游戲的主力軍。

IOS作為主流的開發平臺,與Android相比,IOS平臺硬件統一,這使得程序開發人員需要考慮的兼容性問題變得相對容易,維護及修復成本也較低。IOS游戲開發收入是Android游戲開發收入的6倍,IOS已經成為了手機游戲開發的首選平臺。本文以數獨游戲為切入點,研究IOS平臺下的游戲開發技術。

1 數獨游戲分析與設計

1.1 游戲介紹

數獨[2]最早起源于18世紀初瑞士數學家歐拉等人研究的拉丁方陣,經歷了一系列的演變,從早期的“拉丁方塊”、“數字拼圖”到現在的“數獨”,游戲規則逐步確定。正式的數獨游戲最早出現在20世紀70年代的美國,后來逐漸被介紹到日本、英國、中國等,在全球范圍內確立了謎題領域的世界地位。

數獨盤面是個九宮,每一宮又分為九個小格,在這八十一格中給出一定的已知數字和解題條件,利用邏輯和推理,在其他的空格上填入1-9的數字,使1-9每個數字在每一行、每一列和每一宮中都只出現一次。這游戲全面考驗玩家觀察能力和推理能力,雖然玩法簡單,但數字排列方式卻千變萬化,使得數獨成為了訓練頭腦的絕佳方式。

1.2 系統功能模塊劃分

游戲共分為8個功能模塊:游戲主體模塊、解題器模塊、謎題自動生成器模塊、關卡編輯器模塊、游戲菜單模塊、關于游戲模塊、背景音效模塊和游戲分享模塊。系統功能模塊劃分如圖1所示。

[數獨游戲][謎題自動生成器][游戲主體][解題器][關于游戲][關卡編輯器][游戲菜單][游戲分享][背景音效]

圖1 系統功能模塊

在系統模塊劃分中,游戲主體模塊、解題器模塊、謎題自動生成器模塊、關卡編輯器模塊這四個模塊的設計相當重要。游戲主體模塊用于實現游戲界面的生成,接收用戶的輸入,并根據用戶輸入,通過調用解題器模塊,判斷用戶輸入的正誤;解題器模塊采用了無論在時間效率還是空間效率都有著明顯優勢的舞蹈鏈算法實現;謎題自動生成器模塊是為了使游戲更加生動有趣,系統已經內置四個等級(初試身手、漸入佳境、龍潭虎穴、巔峰時刻)共800套謎題,對于希望自定義游戲內容的用戶,可以通過謎題自動生成器模塊建立自己的謎題庫;關卡編輯器模塊使得用戶在完成低級別的謎題后,才可以繼續挑戰更高等級的謎題,關卡編輯器是基于HTML和javascript寫的網頁版工具;游戲菜單模塊在主菜單里提供了一系列常用的按鈕,方便用戶選擇相應的功能;關于游戲模塊為用戶提供了游戲說明,幫助用戶快速掌握游戲使用方法;為了在解題時增加樂趣,用戶可以選擇開啟游戲背景音效模塊;游戲分享模塊用于通過短信或郵件的方式向其他用戶分享該款游戲。

2 系統實現的關鍵技術

系統采用多種技術實現數獨游戲的各個功能模塊。其中,開發硬件環境為MacBook Pro,測試環境為iphone simulator,開發的軟件環境為Mac OS 10.11+Xcode 7.1+ Cocos2D-iphone,編程語言采用Objective-C,數據庫采用SQLite。在解題方面,采用了舞蹈鏈算法,解題效率極高。

2.1 Objective-C

系統開發采用Objective-C。Objective-C[3]是非常實用的編程語言,它是一個用C寫成的很小的運行庫,是一種擴充了C的面向對象的編程語言。Objective-C可以在支持GCC的系統上編譯并運行。利用Objective-C可以編寫如IOS操作系統、IOS應用程序等一系列程序。

Objective-C不支持多重繼承,且不支持運算符重載。Objective-C使用動態運行時類型(dynamicaly typed),所有的方法都是函數調用(包括系統調用),它的類庫比C++更容易操作,Objective-C在運行時可以允許根據字符串名字來訪問方法和類,還可以動態連接和添加類。

2.2 Cocos 2D開發框架

Cocos2D[4]是用于構建iPhone游戲的開源框架,是基于iPhone核心SDK之上架構而成,用于構建2D游戲、演示程序和其他圖形界面交互應用等。它可以讓程序員在創建自己的iPhone游戲時節省很多時間。它具有很多功能,比如sprite(精靈)扶持、非??岬膱D形效果、動畫效果、物理庫、音頻引擎等。

Cocos2D也擁有幾個主要版本,包括Cocos2D-

iPhone、Cocos2D-X。在系統開發過程中采用Cocos2D-iPhone版本的框架。雖然Cocos2D-X是一個跨平臺的框架,開發的應用程序可以適用于不同的平臺,但是在實際開發過程中,需要處理很多與平臺相關的問題,而Cocos2D-iPhone版本僅針對IOS平臺,以Objective-C為編程語言,和蘋果的硬件系統結合非常好,因此它是開發IOS游戲的不二選擇。

2.3 Xcode開發工具

Xcode[5]是運行在操作系統Mac OS X上的集成開發工具(IDE),由蘋果公司開發。Xcode是開發Mac OS X和iOS應用程序的最快捷的方式。Xcode具有統一的用戶界面設計,編碼、測試、調試都在一個簡單的窗口內完成。

Xcode支持多種開發語言,如C、C++、Objective-C、Java、Python等,Xcode由蘋果公司開發,是一款免費的開發工具,與Mac OS X一起發行,可以在蘋果公司官方的網站下載,目前最新版本是Xcode 7.1。

2.4 舞蹈鏈算法

舞蹈鏈算法[6](Dancing Links)的發明者是Don Knuth,利用該算法可以使很多搜索問題得到優化,舞蹈鏈算法不僅可以解決精確覆蓋問題,還可用于重復覆蓋問題。Dancing Links用的數據結構是交叉十字循環雙向鏈,Dancing Links中每個元素有六個分量,分別為:Left指向左邊的元素、Right指向右邊的元素、Up指向上邊的元素、Down指向下邊的元素、Col指向列標元素、Row指示當前元素所在的行。

利用舞蹈鏈算法求解數獨問題需要下列四個步驟:①把數獨問題轉換為精確覆蓋問題;②設計出數據矩陣;③用舞蹈鏈算法求解該精確覆蓋問題;④把該精確覆蓋問題的解轉換為數獨的解。

與此相對應,也可以利用暴力破解法解決數獨問題,暴力破解法基本思想是:根據題目的部分條件確定答案的大致范圍,并在此范圍內對所有可能的情況逐一驗證,直到全部情況驗證完畢。通過測算,舞蹈鏈算法無論在時間效率還是空間效率方面都優于暴力破解法,因此它是最適合用于解決數獨問題的算法。

3 系統運行界面

本應用安裝完成后,包括了開始游戲、謎題生成器、快速解題器、背景音效開啟、排行榜與成就、關于游戲、游戲分享、獲取更多游戲共八部分系統界面,其主界面如圖2所示。當點擊開始游戲后進入到游戲難度等級選擇界面,難度等級共劃分成四類(初試身手、漸入佳境、龍潭虎穴、巔峰時刻),用戶從最低難度等級的謎題開始。每一類難度等級有200題,系統共內置800個謎題,每題下方顯示答題時長,謎題關卡界面如圖3所示,對于尚未完成的謎題則顯示為灰色。選擇一個謎題進入游戲界面,游戲界面如圖4所示,游戲界面以咖啡色為主色調,包含了9行9列共81個格子,大部分區域已經填寫好數字,用戶只需選擇空白區域,并填入合適的數字即可,用戶也可以利用右上角的重置按鈕,將游戲恢復到原始狀態。用戶的狀態數據保存在本地數據庫SQLite中。

4 結束語

數獨游戲看似簡單,但由于數字排列可以做到千變萬化,因此成了考驗玩家耐心與邏輯推理能力的一款益智類游戲,深受大眾喜愛。該游戲基于IOS平臺,可以運行在任意的IOS移動終端上,其界面美觀,性能穩定。隨著智能手機的普及以及4G時代的全面開啟,這一類益智游戲將具有更大的市場空間。

參考文獻(References):

[1] 天極網.2015手游市場報告:中國成全球最大市場[EB/OL].

http://gameonline.yesky.com/482/95650482.shtml,2015.9.

[2] 王陽,褚治廣.基于Android 平臺的數獨游戲設計[J].遼寧工

業大學學報(自然科學版),2013.8.

[3] 楊正洪,鄭齊心等.IOS編程揭秘——Objective-C程序設計

入門[M].清華大學出版社,2013.

[4] 劉杰逾.基于IOS平臺的一款游戲設計與實現[D]. 電子科技

大學,2012.5.

[5] 林冀,范俊等.Objective-C程序設計(第四版)[M].電子工業

出版社,2012.

[6] 萬倉一黍博客園.算法實踐——舞蹈鏈(Dancing Links)算法

求解數獨[EB/OL].http://www.cnblogs.com/grenet/p/3163550.html,2013.7.

主站蜘蛛池模板: AV老司机AV天堂| 青青草国产精品久久久久| 欧美亚洲一区二区三区在线| 国产精品大尺度尺度视频| 国产精品夜夜嗨视频免费视频| 88国产经典欧美一区二区三区| 2021天堂在线亚洲精品专区 | 99久久无色码中文字幕| 99精品免费在线| 日韩乱码免费一区二区三区| 色悠久久久久久久综合网伊人| 91福利免费视频| 国产9191精品免费观看| 一本大道AV人久久综合| 免费毛片视频| 毛片久久久| 国产高清又黄又嫩的免费视频网站| 久久久久九九精品影院| 天天综合网在线| 夜色爽爽影院18禁妓女影院| 国产高清国内精品福利| AⅤ色综合久久天堂AV色综合 | 久久久久人妻一区精品色奶水| 亚洲精品欧美重口| 波多野结衣一二三| 日本午夜精品一本在线观看| 国产精品所毛片视频| 久久一本精品久久久ー99| 国产玖玖视频| 国产在线视频福利资源站| 五月天福利视频 | 国产剧情一区二区| 久久香蕉欧美精品| 四虎永久免费地址| 欧美h在线观看| 日本免费一区视频| 欧美一级夜夜爽www| 国产自无码视频在线观看| 2020国产精品视频| 精品国产福利在线| AV在线天堂进入| 国产交换配偶在线视频| 久久久久亚洲AV成人人电影软件| 日本精品中文字幕在线不卡| 欧美午夜小视频| 在线色综合| 国产精品美女免费视频大全| A级全黄试看30分钟小视频| 国产香蕉97碰碰视频VA碰碰看| 永久毛片在线播| 免费国产高清视频| 香蕉视频在线观看www| 国产乱肥老妇精品视频| 欧美不卡视频在线| 日韩av无码精品专区| 福利在线不卡| 欧美一区中文字幕| 成人福利一区二区视频在线| 麻豆AV网站免费进入| 国产亚洲精品精品精品| 免费毛片a| 在线国产91| 亚洲天堂网视频| 国产精品丝袜在线| 在线观看视频一区二区| 亚洲人免费视频| 色播五月婷婷| 四虎亚洲国产成人久久精品| 久久久四虎成人永久免费网站| 99热这里都是国产精品| 国产精品美人久久久久久AV| 99久久精品国产麻豆婷婷| 亚洲AV无码乱码在线观看代蜜桃 | 国产在线无码一区二区三区| 国产麻豆福利av在线播放 | 日韩久久精品无码aV| 免费A∨中文乱码专区| 亚洲成肉网| 色欲色欲久久综合网| 亚洲精品动漫在线观看| 国产精品亚洲一区二区在线观看| 国产精品真实对白精彩久久|