版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE1- 引言编写目的作用本文设计书,是充分熟悉并且熟练掌握Android平台应用层编程的基础上。对JumpJump游戏软件的总体设计、模块划分、接口设计和关键数据结构的具体描述。文档结构本文第二章描述系统的总体情况,包括系统目标、设计原则、运行环境等内容;第三章描述了程序代码具体实现;第四章描述了程序的功能要点;第五章描述了用户界面的细节要求。电子文档编写工具MicrosoftWord2007forWindows7系统概述在GoogleAndroid智能手机平台上,以“是男人就下一百层”游戏为原型,实现JumpJump游戏。为Android手机用户提供丰富的游戏体验。玩家通过控制游戏中人物向上跳跃以获取相应分数。游戏的主要内容包括:玩家通过触屏或者滑动屏幕控制游戏人物的跳跃,其中触屏时间或者滑动距离决定游戏中人物的跳跃距离,游戏中人物水平移动方向不受玩家控制,在左右边界内来回移动;游戏中分多种功能性板块:移动板块,弹跳板块,普通板块,左右加速板块,针板等;游戏道具分:普通加血道具,减速道具,特大加血道具,加分道具等。玩家在满血情况下获得加血道具将转化为加分;支持背景音乐,游戏音效,暂停,本地信息存储等功能。并且可进行游戏偏好设定,本地分数维护等操作;基于scoreloop支持全球积分排行榜;游戏分7个楼层,每完成相应楼层的游戏后,给予玩家特大加血道具。并且作为休息区域,为玩家送上精彩笑话,游戏难度以及功能性板块出现概率均与楼层相关,并且每到达一个楼层给予额外分数加成。7层以后,不再出现休息区域;游戏中,玩家以获取高分为目的,在保证不掉落到下方火焰(否则判定游戏结束),不断向上跳跃以获取高分;玩家可与全球玩家比拼最高得分。设计目标本软件设计为ActionGame类型手机游戏。在保障为用户提供新颖游戏体验的同时,希望以此游戏为蓝图,摸索出一套android平台游戏开发的通用模块。设计原则遵循Android平台程序设计特性,设计要求能在Android系统上正确运行的程序。充分利用手持移动设备特性。优化游戏性能需求,以适合手机硬件要求。设计友好美观的人机交互界面。模块化设计方法,以低耦合高内聚为开发原则。编写并且分离高通用性模块,为其他游戏提供复用。可提高代码的可读性,方便软件的测试和维护。运行环境硬件平台手机处理器主频要求为528MHz以上,内存要求192MBRAM以上。手机屏幕需要支持触摸屏。手机屏幕分辨率为320*480及以上。软件平台操作系统:Android1.5以上应用软件整体结构及功能概述本程序主要划分为:android特性层,游戏逻辑层,全球排行榜等三大模块。其中android特性层主要处理android平台特有的编程规范以及接口等。游戏逻辑层主要解决游戏底层通用引擎以及游戏逻辑实现。全球排行榜主要负责用户游戏得分的全球排行,由scoreloop模块管理。程序体系结构如下图所示:Jumpjump游戏Jumpjump游戏游戏逻辑层Android特性层全球排行榜数据持久化音效、音乐播放用户交互界面通用引擎游戏逻辑实现ScoreLoop图SEQ图\*ARABIC1程序体系结构图Android特性层AAndroid特性数据持久化音效、音乐播放用户交互界面图2android特性层结构图JavaSerializable
AndroidI/0
SoundPoolMediaPlayerAndroid特性层以android平台特有API为基础,封装通用调用模块。其中包括用户交互界面编程,数据持久化编程,以及android平台手持设备硬件调用模块等。数据持久化模块中,采用javaSerializable
(序列化)和android平台I/0操作对游戏数据进行持久化存储。Android平台设备调用模块,在平台提供的API基础上封装音乐音效调用模块。用户交互界面模块中主要关于游戏UI显示及响应,以及屏幕事件响应等操作。游戏逻辑层游戏逻辑层游戏逻辑层通用引擎游戏逻辑实现图3游戏逻辑层结构图游戏循环图形绘制精灵抽象事件响应接口游戏逻辑层部分主要包括一个高通用性的游戏引擎,以及在此引擎基础上实现的游戏逻辑部分。通用引擎部分将在2.5关键技术部分予以介绍。全球排行榜全球排行榜模块中采用了ScoreLoop公司提供的软件开发包,该开发包提供了一套完整的社交游戏解决方案。关键技术JumpJump程序包含三大关键技术:一个与平台无关的通用游戏引擎、具有android平台特性的游戏设计模式、以及一套低耦合的函数封装库。游戏引擎JumpJump游戏引擎的设计与常规游戏引擎主体结构一致。同样拥有精灵,碰撞检测,游戏循环,动画等引擎必备要素,并且拥有控制游戏进程的诸多接口函数。本文在此着重介绍该引擎与android平台结合,显示出的低关联高通用性特点。游戏逻辑部分游戏逻辑部分游戏主循环PaintListener.updatePaint();AndroidView实现PaintListener接口ImageFactoryLImageManager界面绘制函数——由android平台控制doDraw()绘制游戏主体提供绘制对象图4游戏逻辑图由上图可知,只要根据平台的特性,修改ImageFactory类,为绘制函数提供该平台支持的图像对象便可实现游戏的移植。正是这一设计结构使该引擎对于平台依赖度极低。Android平台游戏设计模式与传统的游戏设计模式不同,Jumpjump程序充分利用了android平台的特性,开创了一套新颖的游戏设计思路。传统的游戏设计思路中,游戏程序控制所有的界面内容绘制工作,以逻辑上的先后顺序,将图片逐层贴在屏幕上。最终呈现使用者所见的游戏画面。而jumpjump程序除了主体游戏部分采用了引擎贴图控制外,将游戏状态信息等其他部分全部交由android平台自行管理。并且基于android平台的handler机制进行消息的跨层传递。游戏设计思路见下图:游戏状态层游戏状态层游戏主体绘制层Android视图层图5android游戏设计模式图以上图为例,android程序中view(视图)统一由一个activity进行管理,并且view之间可以进行嵌套,得益于view嵌套机制,jumpjump程序设计中将游戏主体部分作为一个自行绘制的view,将其余游戏元素作为另外一层view,交由android平台进行统一管理。并且在各层view之间充分利用android平台的handler机制,用以进行消息传递,以及进行视图跟新等操作。低耦合类库在游戏开发中需要涉及与android平台相关的诸多API的调用,并且这些模块是游戏开发中的共性。Jumpjump程序封装了一套低耦合的模块调用类库。其中Jumpjump使用到以下方面:数据持久化上层采用了javaSerializable
以及POJO类设计模式,底层调用了android平台I/0操作接口,用于数据的持久化存储。该方案具有操作方便易于扩展等特性。对于XML,JSON等数据交换形式均有良好的扩展和适用性。音效、音乐播放以android平台SoundPool,MediaPlayer为基础,封装通用调用函数。该模块具有低耦合高内聚的显著特性。可被其他android程序复用。用户界面设计基本原则本程序界面设计站在用户的角度,以便利性,美观性为主,加上一贯性、创新性、反馈性、详细性、便捷性、恢复性、易控性,既能给用户带来使用的便捷,又兼备视觉冲击力。
在设计时充分考虑手机屏幕特点,根据屏幕大小设计用户界面。设计概述程序由四个主要界面组成,分别为主菜单界面、游戏界面、高分榜界面,用户偏好设置界面。各个界面关系如下图所示。主菜单主菜单游戏界面分数榜本地分数榜全球分数榜选项帮助偏好设置用户信息图6界面设计结构图用户界面设计主菜单界面设计背景背景LOGOStartGameOptionsControlHighscoreHelp图7主菜单设计图主菜单界面设计以简明扼要为原则,同时兼顾游戏程序本身的动感性。以波浪特效形式展示菜单。同时在选择相应菜单时具有选中效果。其中: StartGame:单击后开始游戏;Options:单击后弹出用户信息设置选项以及音效开关;Control:点击后出现控制模式选择菜单,单用户选择喜好模式后,自动跳回主菜单;HighScore:单击后打开排行榜,排行榜分为本地排行榜和全球排行榜;Help:游戏使用帮助界面;游戏主体界面设计图图8游戏界面设计图GAMEVIEWStairs0000Score00000lifepower游戏界面分游戏画面和状态栏两部分。状态栏层用于显示游戏状态信息,其中包括人物
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 没有签贷款协议书有效
- 静安坡道土方外运协议书
- 中餐预订服务流程与规范
- 椎体骨折治疗流程
- 中班幼儿情绪管理引导策略
- 急诊科:中暑急救措施
- 2026g广西柳州市柳北区白露街道办事处招聘公益性岗位2人备考题库附参考答案详解ab卷
- 2026甘肃金昌永昌县红山窑镇卫生院招聘1人备考题库含答案详解(满分必刷)
- 2026山西省气象局招聘应届高校毕业生12人备考题库(第2号)附参考答案详解(综合题)
- 2026湖北长江产业资产经营管理有限公司所属企业招聘12人备考题库及答案详解(真题汇编)
- 2026年上半年黑龙江中医药大学校本部公开招聘工作人员37人考试备考题库及答案解析
- 2026急性缺血性卒中诊治指南:循证更新与临床实践
- 2026春统编版语文 语文五年级下册综合性学习遨游汉字王国 汉字真有趣 教学课件
- 老年人摄影与艺术创作指导
- 2024-2025学年度洛阳职业技术学院单招《职业适应性测试》综合提升测试卷含答案详解【新】
- 蒙牛校园招聘在线测评题
- (2025年)(新版)低压电工证职业技能考试题库(含答案)
- 规范参股公司管理制度
- 幕墙施工防坠落方案
- 工厂防错培训课件
- 2025人教版三年级数学上册 第六单元 分数的初步认识 单元分层作业
评论
0/150
提交评论