1-杨茂鹏-基于qt俄罗斯方块设计与实现答辩ppt_第1页
1-杨茂鹏-基于qt俄罗斯方块设计与实现答辩ppt_第2页
1-杨茂鹏-基于qt俄罗斯方块设计与实现答辩ppt_第3页
1-杨茂鹏-基于qt俄罗斯方块设计与实现答辩ppt_第4页
1-杨茂鹏-基于qt俄罗斯方块设计与实现答辩ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 太原科技大学华科学院基于Qt的俄罗斯方块游戏设计 专业:电子信息工程 答辩人:杨茂鹏 指导老师:叶乐欢2018/10/18设计任务与要求可行性研究Qt简要介绍游戏详细设计与实现游戏整体测试程序设计流程致谢2018/10/18设计任务要求 游戏的开始,停止,暂停,继续 游戏难度的设计 分数统计 游戏显示2018/10/18可行性研究开发环境 操作系统:Microsoft Windows 7 Professional(64位) 内存:4G 硬盘:500G CPU:I5-2450 交互工具:键盘/鼠标 显示器:WXGA显示器 开发工具:Qt接口控制 本游戏通过键盘进行操作,在Windows的操作系

2、统下,利用键盘的上、下、左、右键对方块进行移动变形,要使用键盘的接口。Qt简介Qt是一个跨平台的C+图形用户界面的应用开发框架。它支持windows、linux/unix平台、macintosh、Embedded平台等,所以Qt所开发的应用具有良好地可移植性。Qt的优良特性 可移植性 国际化 面向对象 可用户化的外观 独有的Signal Slot机制 开发程序的方便性 强大的功能 高性能的工具8 信号与槽的连接原理图游戏详细设计图形的产生 定义一个枚举类型,表示方块的七种形状,通过图形实体类TetrixPiece的setRandomShape()方法随机产生一个初值,用于产生图形的某种状态,如

3、图:随机数反L型L字形正方形T字形直线型S字形Z字形随机产生一个数每个形状由4个小方块组成,这里每行的四个坐标即4个小方块的坐标,其中横向为X,纵向为Y,上图分别为Z字形、S字形、直线型、T字形、正方形、L字形和反L字形,各个图形的坐标依次如下: 0, -1 , 0, -1 , 0, -1 , -1, 0 , 0, 0 , 0, 0 , 0, 0 , 0, 0 , 0, 0 , 1, 0 , -1, 0 , 1, 0 , 0, 1 , 1, 0 , 0, 1 , 0, 0 , 0, 0 , -1, 1 , 1, 1 , 0, 2 , 0, 1 , 1, 1 , 0, 1 , 0, 1 -1,

4、-1 , 0, -1 , 1, -1 , 0, -1 ,图形的旋转 图形的旋转是通过绘制4 个方向的方块,在不同旋转角度显示不同方向的方块来实现的。定义一个函数rotatedLeft() const,当每次响应键盘向上的方向键时,方块顺时针旋转90度, 同时画布刷新一次,这样,方块的变形就实现了。方块下移 功能:判断图形能否向下移动,显示下移后的界面,或者游戏结束。 实现:先向下移动一步,此时并不在界面上显示下移后的界面,判断是否到底,若到底则消行记录分数、出现下一个图形;判断是否是否一开始就与其它图形重合,若是则游戏结束; 经过以上判断,此时方可显示一下一步后的界面,并进入下一次计时,流程图

5、如图所示:满行及消行判断 功能:判断是否有已满行,然后把该行消去。 实现:游戏在方块下移到底后,利用循环判断有几行已满,并对已满行进行清零和进行加分操作,同时更新窗口,从而实现消行的效果。绘制游戏区域及方块 通过调用QPainter的drawLine的方法绘制游戏网格,调用QPainter的drawPixmap和drawRect绘制方块背景和边框。键盘响应俄罗斯方块是通过上下左右来控制游戏的运行,键盘响应所示:功能图如图判断按键键盘功能图具体代码实现:通过重新实现虚函数QWidget:keyPressEvent来响应相应的键盘按键。不是这4个按键,则接收其他按键。可以则默认下移一步, 否则下到

6、底判断可否移动。可以则移动判断可否移动。可以则移动判断可否变形,图形变化调用函数游戏主窗体的实现 游戏主窗体是整个游戏的显示部分,主要用于放置绘制好的游戏区域,显示游戏玩家的得分情况、关卡和其它基本信息。游戏区域的宽分成10等分,高分成22等分,也就是说每行有10小矩形,总共有22行(BoardWidth=10,BoardHeight=22)。左边是LCD的显示部分,LCD的显示最大为五位数。分为得分(scoreLcd)、关卡(levelLcd)、消行(linesLcd)。另外,主窗体还设计了游戏的选项按钮,方便游戏者的操作。 游戏的设计是在Qt中整个工程下完成的,游戏设计完成后,系统源文件布局如图所示:系统源文件布局图整体测试游戏基本功能测试游戏设计完成后经过我的测试,基本的功能全部都已经实现,点击“开始”按钮后,游戏的界面如下图:游戏可移植性的测试 由于Qt是一个跨平台的开发工具,利用Qt 开发的程序具有可移植性,为了验证游戏能在不同的系统下运行,我将游戏移植到Cent OS5.6下进行测试,发现游戏能够完美运行,且不用作任何更改,运行结果如图下:游戏在Cent OS上的测试测试结果分析

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论