没有合适的资源?快使用搜索试试~ 我知道了~
嵌入式软件开发课程设计-俄罗斯方块游戏.doc
需积分: 9 2 下载量 123 浏览量
2022-10-15
00:26:09
上传
评论
收藏 2.4MB DOC 举报
温馨提示
试读
26页
嵌入式软件开发课程设计-俄罗斯方块游戏.doc
资源推荐
资源详情
资源评论
______________________________________________________________________________________________________________
精品资料
淮 海 工 学 院 计算机工程学院
课程设计报告
设计名称: 嵌入式软件课程设计
姓 名: 学 号:
专业班级:
系 (院): 计算机工程学院
设计时间:
设计地点: 硬件综合室
指导教师评语:
签名:
2015 年 1 月 日
成绩:«成绩»
«评语»
______________________________________________________________________________________________________________
精品资料
课 程 设 计 说 明 书
1.课程设计题目:
基于 Android 环境的俄罗斯方块游戏设计
2.课程设计内容:
俄罗斯方块是家喻户晓的益智小游戏,它由俄罗斯人阿列克谢∙帕基特诺夫
(Alexey Pazhitnov)在 1984 年 6 月利用空暇时间编写的游戏程序,故此得名。俄
罗斯方块的基本规则是移动、旋转和摆放游戏随机产生的各种方块,使之排列成完整的
一行或多行并且消除得分。它看似简单却变化无穷,俄罗斯方块上手极其简单,且游戏
过程变化无穷,作为游戏本身很有魅力,但是要熟练掌握其中的操作和摆放技巧,难度
却不低。此软件给用户提供了一个展现自己高超技艺的场所,在这里,它不仅放松自己,
还能感受到游戏中的乐趣。
游戏区域会从顶部不断落下 8 种下坠物的一种,游戏区域右上角有一个区域可以显
示下一个下坠物的形状,玩家可以控制下坠物移动、旋转和一键到底,通过玩家的操作,
下坠物在游戏区域以“摆积木”的形式出现。下坠物在一行或多行堆满后就可以自动消除,
消行后会得到相应的分数,如果当前下坠物堆积至窗口顶端,则游戏结束。
3.课程设计目的:
嵌入式系统的教学可以分为课堂理论教学、实验教学和课程设计三个层面。这三个层面
的目标有所不同。理论学习的主要目标是掌握嵌入式系统的一般原理,例如实时调度策
略、自动控制算法等;实验教学的主要目的是掌握嵌入式系统的主要开发流程和基本方
法,例如开发工具链的使用、小型应用开发等;课程设计的主要目的是通过实际的嵌入
式应用系统开发实例掌握嵌入式系统设计和开发的技能和专门知识,积累实践和工程经
验。
______________________________________________________________________________________________________________
精品资料
课 程 设 计 说 明 书
4.课程设计要求:
开发一个简单的俄罗斯方块游戏,并达到以下要求:
1、开始游戏随机产生方块并自动下落。右上角 2*2 预示框显示即将出现的图形;
2、按“||”键可以暂停游戏,按”GO”键开始游戏;
3、点击屏幕变换方块角度,触屏向左(右)实现左(右)移,向下点击加速下移;
4、系统能够正确判断是否满行,并对已满的行实现消行并加分。
5.设计详细说明
(1) 总体设计思路及算法描述
(1)方块类:每个方块都有自己的 ID、形状、颜色。每个方块都限定在 4*4 的矩
形区域内变幻形状。以此矩形区域的左上方端点为坐标移动。在方块类中
定义多个私有数组,将每种 ID 的方块的形状数据存储好,这样产生一个
方块时只需要提供其 ID 即可。
移动:在指定的游戏区域中移动,包括向左、右、下移动。以一个单元为单位。
触屏向左(右)轻微移动实现左(右)移一格,触屏向左(右)长移实现
左(右)移到最左(右)端,触屏向下轻微移动加速下移一格,触屏向下
长移加速下移至底端。如果可以移动,则修改参考点的位置,并在指定的
游戏区域中重新填充自己,返回是否移动成功的信息。
旋转:为了处理
方块的旋转,我们不能只记录提供的 8 中方块形状,而应该把它
们旋转后产生的每种形状都认为是一种不同的方块。这时候我们只处理一
个方向的旋转,即顺时针旋转方式。然后在指定的区域中重新填充自己。
(2)游戏区域类:可以用一个二维数组方便的实现。
状态:游戏未开始;游戏已开始;游戏结束。
方块落地:先执行清行操作,获得活动方块占用了哪些行的信息,然后逐行进行
扫描:对每一行,检查其 10 列单元格是否都已经被填充,如果没有,则
继续检查下一行,如果是,则将该行以上的游戏区域整体下移一行,并在
最上面一行填充一行空格。
执行完清行操作后,要产生下一个方块,方块类似于“开始”命令中的步骤,此时
要把活动方块指定为新产生的方块,而且还有检查新产生的方块是否能成
功填充,如果填充失败,则游戏结束。
______________________________________________________________________________________________________________
精品资料
课 程 设 计 说 明 书
5.设计详细说明 续 1
(2) 硬件原理图及相关说明
Android 有丰富的功能,因此很容易与桌面操作系统混淆。Android 是一个分层
的环境,构建在 Linux 内核的基础上,它包括丰富的功能。UI 子系统包括:窗口,视
图。
用于显示一些常见组件(例如编辑框、列表和下拉列表)的小部件。
Android 包括一个构建在 WebKit 基础上的可嵌入浏览器,iPhone 的 Mobile
Safari 浏览器同样也是以 WebKit 为基础。Android 提供多种连接选项,包括
WiFi、蓝牙和通过蜂窝(cellular)连接的无线数据传输(例如 GPRS、EDGE 和
3G)。Android 应用程序中一项流行的技术是链接到 Google 地图,以便在应用程序中
显示地址。Android 软件栈还提供对基于位置的服务(例如 GPS)和加速计的支持,不
过并不是所有的 Android 设备都配备了必需的硬件。另外还有摄像支持。过去,移动
应用程序努力向桌面应用程序看齐的两个领域分别是图形/媒体和数据存储方法。
Android 通过提供对 2D 和 3D 图形的内置支持,包括 OpenGL 库,解决了图形方面的
挑战。由于 Android 平台包括流行的开源 SQLite 数据库,因此缓解了数据存储的负
担。
应用程序架构。如前所述,Android 运行在 Linux 内核上。Android 应用程序
是用 Java 编程语言编写的,它们在一个虚拟机(VM)中运行。需要注意的是,这个 VM
并非您想象中的 JVM,而是 Dalvik Virtual Machine,这是一种开源技术。每个
Android 应用程序都在 Dalvik VM 的一个实例中运行,这个实例驻留在一个由 Linux
内核管理的进程中。
剩余25页未读,继续阅读
资源评论
智慧安全方案
- 粉丝: 3605
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2%EF%BC%9A%E9%99%95%E8%A5%BF%E
- yyspdz62_944.apk
- SAP公司间采购EDI配置-如何触发自动MIRO.docx
- python197基于图像识别的仪表实时监控系统.rar
- I2C驱动SHT30温湿度传感器和LCD12864使用例程(RSCG12864B)
- python193中学地理-中国的江河湖泊教学网(django).rar
- python191基于时间序列分析的大气污染预测软件(django).rar
- python190基于人脸识别智能化小区门禁管理系统.rar
- python189某医院体检挂号系统.rar
- python179的企业物流管理系统(django).rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功