手机游戏的设计与实现毕业论文.docx
- 文档编号:12585312
- 上传时间:2023-04-20
- 格式:DOCX
- 页数:59
- 大小:1.15MB
手机游戏的设计与实现毕业论文.docx
《手机游戏的设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《手机游戏的设计与实现毕业论文.docx(59页珍藏版)》请在冰豆网上搜索。
手机游戏的设计与实现毕业论文
手机游戏的设计与实现毕业论文
摘要
通信技术的发展,促使智能手机得到快速的发展。
基于智能手机平台的软件如雨后春笋般喷涌而出。
智能手机的软件服务覆盖着生活的各方各面,手机的增值业务已经成为通信公司的一个重要的组成部分,近年的发展手机的游戏业务已经成为一个非常庞大的产业链。
随着3G业务的不断扩展,智能手机的游戏业务也必将得到更大的推广,手机游戏也必将带来巨大的市场空间和经济价值。
本课题是针对Google公司在2007年11月05日推出的新的智能手机操作系统Android。
Android是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。
目前尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。
Android操作系统最初由AndyRubin开发,最初主要支持手机。
2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。
Android的系统架构和其它操作系统一样,采用了分层的架构。
android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。
本课题是在AndroidSDK基础上进行游戏开发,进行UI设计,动画设计,SQLite数据库设计,并最终完成手机游戏。
然后在模拟器上进行模拟并最终能实际应用于手机,供用户娱乐消遣。
【关键词】手机游戏;Android;SQLite
Abstract
Thedevelopmentofcommunicationtechnologydevelopmentpromotethedevelopmentofsmartphonesgettingfast.Thesoftwarewhichbasedonintelligentmobileplatformspringup.Smartphonesoftwareservicecoverswithlifeofallpartiestothesurface.Thehandsetvalue-addedbusinesscommunicationscompanyhasbecomeoneoftheimportantpartofthecellphonegameinrecentyears.Developmentbusinesshasbecomeaverybigindustrialchain.Asthe3Gbusinessexpansionofintelligentmobilesgamesbusinesswillbemorebigpromotion,cellularphonegamewillbringhugemarketspaceandeconomicvalue.
ThistopicisforAndroidthenewintelligentmobilephoneoperatingsystemwhichGooglecompanyproducedinNovember2007.AndroidisaLinuxbasedoperatingsystemandit’sopensource.Itismainlyusedinportabledevices.AndroidoperatingsystemwasdevelopedbyAndyRubinatfirst,mostlyforphone.In2005Googleacquisitioncapitalinjection,andformaopenmobilephonealliancedevelopmentimprovement,expandsgraduallytothetabletcomputerandotherareas.Androidsystemarchitectureandotheroperatingsystem,usethelayeredframework.Androidisdividedintofourlayers,fromtoptolow-levelapplicationlayer,respectivelyisapplicationframeworklayer,systemsruntimelayerandLinuxkernellayer.
ThistopicisbasedontheAndroidSDKbasisforgamedevelopment,theUIdesign,animationdesign,SQLitedatabasedesign,andfinallycompletemobilegames.Andtheninthesimulatorandeventuallycansimulatethepracticalapplicationinmobilephones,fortheusertoentertainment.
【keyword】mobilegames;Android;SQLite
绪论
1.1手机游戏
手机游戏(MobileGame或WirelessGame):
指用户利用随身携带并具有广域无线网络联机功能(GPRS或CDMA)的移动终端设备(手机),随时随地进行的游戏。
简单说手机游戏是指运行于手机上的游戏软件。
目前用来编写手机最多的程序是Java语言,其次是C语言。
随着科技的发展,现在手机的功能也越来越多,越来越强大。
而手机游戏也远远不是我们印象中的什么“俄斯方块”“贪吃蛇”之类画面简陋,规则简单的游戏,进而发展到了可以和掌上游戏机(如psp)媲美,具有很强的娱乐性和交互性的复杂形态。
1.2手机游戏的分类
(一)从开发技术的角度分类
1.嵌入式游戏:
此类游戏在出厂前就被固化在手机芯片中了,诺基亚公司的《贪吃蛇》就是一个例子。
但是由于用户自己不能更新或卸载游戏,所以嵌入式游戏现在已经不受用户欢迎了。
2.短信游戏:
短信游戏的玩法通常是发送一条短信到某个号码,此号码对应着游戏供应商的服务器。
服务器收到这条信息后执行一些操作,然后返回一条结果信息到玩家的手机中。
由于它依靠用户输入文字,因此本质上它是一个命令环境。
此外,短信游戏也需要一定的费用,用户和服务器每交换一次信息大概需要0.10元人民币。
3.浏览器游戏:
Wap是一种手机拨号上网的网络服务。
而Wap浏览器游戏就像我们用电脑上网,并通过浏览器浏览网页来进行的简单游戏一样,也属于一种文字游戏。
其进行方法和短信游戏类似,玩家可以根据Wap浏览器浏览到的页面上的提示,通过选择各种不同选项的方法来进行游戏。
Wap游戏也有短信游戏不够直观的缺点。
4.J2ME游戏:
J2ME全称是Java2MicroEdition,是Java2的微型版,是针对移动电话等一些小型设备而设计的Java语言。
它极大地提高了移动电话支持游戏的能力,并且提供了比SMS或WAP更好的控制界面。
目前,J2ME并不是手机上配置的唯一的解释语言,但它却得到了绝大多数手机厂商的支持,所以J2ME游戏也得到更多用户的青睐。
5.其他平台的游戏:
除以上几种类型外,还有一些运行在其他技术平台上的手机游戏,如BREW游戏等。
与J2WE游戏相比,这些平台的游戏使用的手机设备范围有一定的局限性。
(二)从游戏内容的角度分类
1.角色扮演游戏(RPG):
有玩家扮演游戏中的一个或数个角色,有完整故事情节的游戏,如大宇公司的《仙剑奇侠传Mobile》。
2.格斗游戏(FTG)有玩家操纵各种角色与电脑所控制的角色进行格斗的游戏,如日本的《街头霸王》移动电话版。
3.动作游戏(ACT):
玩家控制游戏人物,用各种武器消灭敌人的闯关游戏,这类游戏不追求故事情节,如《魂斗罗》系列游戏。
4.运动游戏(SPG):
模拟现实中各种体育运动的游戏,如有高尔夫球、篮球、赛车及网球等作品。
5.射击游戏(STG):
玩家控制各种飞行物(主要是飞机)完成任务或过关的游戏,如《雷电》系列游戏。
6.冒险游戏(AVG):
由玩家控制游戏人物进行虚拟冒险的游戏。
故事情节往往以完成一个人物或解开某些谜题的形式出现,而且在游戏过程中刻意强调谜题的重要性,如《冒险岛》等游戏。
7.益智游戏(PUZ):
这类游戏通常短小而有趣,需要玩家开动脑筋来完成游戏任务,如扫雷、推箱子等游戏。
8.模拟游戏(SIM):
这类游戏的内容通常模拟我们的日常生活,如《虚拟人生》等。
9.棋牌游戏:
扑克和各种棋类游戏,如跳棋、接龙、纸牌、军旗、麻将等游戏。
10.休闲游戏:
玩家无需投入太多的时间和精力,可随时参与、随时推出的游戏,如“泡泡龙”、“愤怒的小鸟”等。
1.3技术简介
本游戏是基于Android智能手机系统,在Eclipse平台下开发而成,并且使用了SQLite数据库。
1.3.1Android简介
Android是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。
目前尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。
Android操作系统最初由AndyRubin开发,最初主要支持手机。
2005年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他领域上。
Android的主要竞争对手是苹果公司的iOS以及RIM的BlackberryOS。
2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。
2012年2月数据,Android占据全球智能手机操作系统市场52.5%的份额,中国市场占有率为68.4%。
Android的系统架构和其它操作系统一样,采用了分层的架构。
android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和Linux核心层。
Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言来开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面,因而受到众多开发者的欢迎,成为真正意义上的开放式操作系统。
在Android中,开发者可以使用Java作为编程语言来开发应用程序,也可以通过NDK使用C/C++作为编程语言来开发应用程序,也可使用SL4A来使用其他各种脚本语言进行编程(如:
python、lua、tcl、php等等),还有其他诸如:
Qt(qtforandroid)、Mono(monoforandroid)等一些著名编程框架也开始支持Android编程,甚至通过Android的系统架构和其它操作系统一样,采用了分层的架构。
android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。
而在Android系统底层方面,Android使用C/C++作为开发语言。
1.3.2Eclipse/IBM-Eclipse简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台。
就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。
幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(JavaDevelopmentKit,JDK)。
虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C++和COBOL等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
基于Eclipse的应用程序的一个突出例子是IBM®Rational®SoftwareArchitect,它构成了IBMJava开发工具系列的基础。
1.3.3AndroidSDK简介
SDK:
(softwaredevelopmentkit)软件开发工具包。
被软件开发工程师的用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。
因此,AndroidSDk指的既是Android专属的软件开发工具包。
Android是谷歌(Google)公司推出的手机开发平台。
与iPhone相似,Android采用Webkit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。
(1)AndroidSDK的安装
下载好AndroidSDK后,开始安装,AndroidSDK采用了Java语言,所以需要先安装JDK5.0及以上版本。
直接下载jdk安装文件安装更为方便。
AndroidSDK不用安装,下载后,直接解压即可,将下载后的SDK的压缩包解压到适当的位置,就这么简单;SDK安装OK。
使用Eclipse进行android应用开发需要给Eclipse装adt插件,这样Eclipse就可以和androidsdk建立连接,可以在Eclipse中启动android模拟器进行程序调试等ADT插件安装这里不再累赘,插件的安装URL为:
[2]也可以下载adt的zip包安装安装完插件后,需要做一些简单的配置:
1、在Eclipse中,选择Window>Preference;
2、从左侧的菜单中,选择Android项;
3、设置SDKLocation,点Browse选择SDK的安装根目录;
4、OK,完成。
(2)发展状况
Android项目目前正在从手机运营商、手机厂商、开发者和消费者那里获得大力支持。
谷歌移动平台主管安迪·鲁宾(AndyRubin)表示,与软件开发合作伙伴的密切接触正在进行中。
从去年11月开始,谷歌开始向服务提供商、芯片厂商和手机销售商提供Android平台,并组建“开放手机联盟”,其成员超过30家。
1.3.4SQLite简介
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。
SQLite第一个Alpha版本诞生于2000年5月.至今已经有10个年头,SQLite也迎来了一个版本SQLite3已经发布。
SQLite虽然很小巧,但是支持的SQL语句不会逊色于其他开源数据库,它支持的SQL包括:
ATTACHDATABASE,BEGINTRANSACTION,comment,COMMITTRANSACTION,COPY,……同时它还支持事务处理功能等等。
也有人说它象Microsoft的Access,有时候真的觉得有点象,但是事实上它们区别很大。
比如SQLite支持跨平台,操作简单,能够使用很多语言直接创建数据库,而不象Access一样需要Office的支持。
如果你是个很小型的应用,或者你想做嵌入式开发,没有合适的数据库系统,那么现在你可以考虑使用SQLite。
目前它的最新版本是3.7.8。
它的官方网站是:
http:
//www.sqlite.org或者http:
//www.sqlite.com.cn,能在上面获得源代码和文档。
同时因为数据库结构简单,系统源代码也不是很多,也适合想研究数据库系统开发的专业人士
1.3.5数据库的设计
所谓数据库是指依照一定的格式存放在一起的数据记录文件,在日常生活中,凡是个人通讯簿、公司账簿、客户名单、成绩等都属于数据库,它们不仅具有固定的格式与特性,而且可以用表格形式记来记录[10]。
数据库设计一般分为如下三方面。
(1)数据库的逻辑设计
概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。
为了能够建立起最终的物理系统,还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行适当的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式。
这就是数据库逻辑设计所要完成的任务。
数据库逻辑结构的设计分为两个步骤:
首先将概念设计所得的E-R图转换为关系模型;然后对关系模型进行优化,关系模型是由一组关系(二维表)的结合,而E-R模型则是由实体、实体的属性、实体间的关系三个要素组成。
所以要将E-R模型转换为关系模型,就是将实体、属性和联系都要转换为相应的关系模型。
(2)数据库的物理设计
数据库的物理设计是指设计出数据库的物理数据模型,即数据库服务器空间上的表、字段、索引、表空间、视图、存储过程、触发器,以及相应的数据字典。
数据库物理设计阶段的任务是根据具体计算机系统的特点,为给定的数据库模型确定合理的存储结构和存取方法。
所谓的“合理”主要有两个含义:
一个是要使设计出的物理数据库占用较少的存储空间,另一个对数据库的操作具有尽可能高的速度。
物理结构设计阶段实现的是数据库系统的内模式,它的质量直接决定了整个系统的性能。
因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事务要进行仔细分析,获得优化数据库物理设计的参数。
在完成数据库的逻辑设计后,即可开始数据库的物理设计。
基于以上数据库的逻辑设计,考虑程序设计的简易性及通用性和自己的实力问题。
需求分析
1.4需求分析
为了使该手机游戏符合用户需要,契合手机用户习惯。
手机游戏的的需求分析阶段就显得十分必要。
需求分析就是对顾客的需求进行定义或确定,在这一过程中有许多工作要做。
我们知道根据信息系统的定义和内容,信息系统的需求分析是最难的[13]。
需求分析的过程可以说是一个对具体问题的反复理解和抽象的过程。
理解就是对现实问题的理解,要弄清楚究竟需要解决什么问题。
抽象就是除去问题的表面,提取问题的本质,建立问题的逻辑模型,以便于以后阶段的系统的设计实现。
需求分析阶段是软件产品生存命期中的一个重要阶段,其根本任务是确定用户对软件系统的需求。
所谓需求是指用户对软件的功能和性能的要求,就是用户希望软件能什么事情,完成什么样的功能,达到什么性能。
通常需求分为两种类型:
一种是功能性需求,一种是非功能性需求,这一点也需要有一种清楚的认识。
需求分析的目标是深入了解软件的功能和性能,确定软件设计的约束、软件同其他元素的接口细节,定义软件的其他有效性需求。
需求分析阶段研究的对象是用户对软件项目的需求。
1.4.1基本功能需求
手机游戏是供手机用户在闲暇时间娱乐的,应当具有以下功能:
1.提供一个适合Android用户游戏软件
软件包含一个基本游戏规则,用户通过触摸屏幕可以控制游戏的进行。
在特定时间范围内,可以根据规则判定游戏的进展效果,并通过积分、过关、输赢形式表现出来,或通过其他可以判定的评价形式。
2.图形动画显示
游戏软件拥有多个图形显示窗口,用来直观地显示游戏的操控和进展情况。
3.文字或图形提示
游戏进展过程中,可以通过文字或图形形式提示用户所发生的一切情况,包括操作错误和效果等,要求用户可以控制文字或图形提示的进行或效果。
4.音乐伴奏
游戏软件能够辅助播放游戏的背景音乐以及游戏动作音效,并要求用户可以控制音乐的播放效果。
5.图形显示改变
软件能体现不同的场景。
1.4.2具体功能需求
1.游戏风格
此android手机游戏是过关类游戏。
游戏是一种黑白的风格,人物可爱幽默,关卡涉及有趣好玩。
2.游戏体验
角色的基本动作都要求流畅。
并且角色的各种动作需要幽默可爱。
游戏的原创性较高,创新元素时刻包含于游戏中,给玩家以淋漓尽致的感觉。
3.音效表现
本游戏所采用的背景音乐为久石让的“summer”,这是一首轻松欢快的轻音乐,很适合本游戏的风格。
游戏的动作音效能够较好的与人物动作整合,增加游戏的乐趣。
4.游戏可玩性
要求有较高的可玩性,需要玩家不同等级通过同一关时有不一样的体验。
1.4.3运行环境
本游戏开发和运行所需软硬件运行环境如下:
1.硬件环境
1)Android手机
2)显示屏分辨率:
480*320
3)输入方式:
触屏
4)内存:
不小于1M
2.软件环境
1)KVMJava虚拟机
2)Eclipse
3)Android1.6及以上平台
1.4.4性能需求
(1)处理能力要求:
很多Android的手机设备处理能力有限,要求游戏不能太复杂,执行效率尽可能高。
(2)内存占用要求很多手机的物理内存十分有限,因此我们开发的游戏占用内存应尽量控制在32KB以内。
(3)移植性问题现在的手机设备类型丰富,不同手机采用的芯片存在不同,因此这款游戏只能支持部分硬件相似的手机系列。
1.5系统结构化分析
目前常用的分析方法有面向数据流的结构化分析方法,面向数据结构的Jackson方法,面向对象的分析方法(简称OOA)等,以及建立动态模型的状态迁移图或PetriQ网等。
虽然各种方法都有其独特的描述方法,但总的说来,所有的分析方法都有他们的共同原则:
(1)必须能够表达和理解问题的数据域和功能域。
(2)必须按自上向下、逐层分解的方式对问题进行分解和细化。
在需求分析阶段,软件的数据域和功能域都能进一步的分解,可以是横向分解也可以是纵向分解。
(3)要给出系统的逻辑视图和物理视图。
软件需求的逻辑视图给出软件要达到功能和处理的数据之间的关系,而不是实现细节;而物理视图给出处理功能和数据结构的实际表示形式。
本系统使用了结构分析方法,此方法用图形表达需求,显得清晰、简明,易于学习和掌握。
以下为系统的逻辑流程分析。
1)菜单设置逻辑流程分析
菜单设置主要负责玩家选择模式,退出游戏,设置背景音乐等等。
惨淡设置逻辑流程如图2-1所示:
图2-1菜单设置流程逻辑
2)关卡选择逻辑流程分析
关卡选择主要负责闯关时城市的选择,和洞府的选择,其逻辑流程图如图2-2所示:
图2-2游戏关卡选择流程图
3)闯关过程逻辑流程分析:
闯关过程负责玩家闯关时对结果进行判断,其逻辑流程图如图2-3所示:
图2-3闯关流程图
4)装备强化逻辑流程分析
装备强化会跟就等级的不同有不同的强化结果,其逻辑流程图如图2-4所示:
图2-4装备强化流程图
1.6目标系统要求
目标系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 手机 游戏 设计 实现 毕业论文