-基于QT的俄罗斯方块游戏设计与实现.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《-基于QT的俄罗斯方块游戏设计与实现.doc》由会员分享,可在线阅读,更多相关《-基于QT的俄罗斯方块游戏设计与实现.doc(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于QT的俄罗斯方块游戏设计与实现摘要:信息时代正处于高速发展中,而电子游戏已经成为人生活中或不可少的消磨工具之一。科技时代在不断地高速发展中,游戏相关编程设计也随着发展变得越来越重要, 俄罗斯方块游戏是一款古老传遍世界的经典游戏,这个游戏看似简单易懂但却变化多端。这个游戏的整体界面展示组成包括方块显示即主要游戏区域、分数等显示框、开始等按键。在游戏过程中由四个正方形组成的形状随机出现,用户按下键盘上的四个方向键操控游戏区域的方块,其中上下左右分别控制组合形状的旋转方向、加速下降、左右运动方向等,最终实现方块在底部满行消除积分,增加等级直至游戏结束。这个论文课题内容包括俄罗斯方块的发展背景、游
2、戏开发所需环境和开发目的和意义等内容。根据自己所学的知识,本论文分别论述俄罗斯游戏游戏背景与目的、可行性研究分析、需求分析、基本功能、界面设计、测试结果等方面。此游戏设计是在系统支持下,以C+为开发编程语言,在QT Creator 5.3.2版本的编程开发平台上实现游戏设计。关键词:游戏设计与开发,QT编程,信号,槽函数Design and implementation of Tetris based on QtAbstract:The information age is in the high-speed development, but the electronic game alrea
3、dy became one of the people life or essential attrition tools. Tetris is a classic game that has been around the world for a long time, and game related programming is becoming more important as the technology age continues to accelerate, its a simple game, but its a very varied one. The games overa
4、ll interface display consists of a box showing the main game area, scores and other display boxes, start and other keys. During the course of the game, the shapes composed of four squares appear randomly. The user presses the four directional keys on the keyboard to control the squares in the game a
5、rea, the top, bottom, left and right respectively control the direction of rotation, accelerated descent, left and right movement direction, etc. . Finally, the bottom of the box full line to eliminate integral, increase the level until the end of the game. This thesis includes the background of Tet
6、ris, the environment and the purpose and significance of game development. According to the knowledge, this paper discusses the Russian game background and purpose, feasibility study analysis, demand analysis, basic functions, interface design, test results, etc. . This game design is in the system
7、support, with C + + as the development programming language, in QT Creator 5.3.2 version of the programming platform to achieve game design.Keywords:Game Design and Development,QT Programming,Signal , Slot function目 录第1章 绪 论11.1 游戏背景和意义1俄罗斯方块的历史背景11.1.1 游戏软件的现状和意义11.1.2 课题实现的研究意义2第2章 课题实现的可行性分析32.1
8、课题的设计目的32.2 可行性研究前提32.2.1 课题研究的基本要求32.2.2 课题研究的目的32.2.3 课题研究的基本方法42.3 可行性分析42.4 游戏设计结论意见4第3章 需求分析53.1 需求分析的含义和目的53.2 游戏的开发需求53.3 俄罗斯方块游戏开发环境平台6第4章 课题所需技术支持74.1 面向对象的程序设计74.2 程序设计思想74.3 关于QT平台74.4 QT内部进程通讯机制9第5章 课题的设计与实现115.1 建立项目115.2 界面设计125.2.1 窗口大小和命名135.2.2 显示实例化135.2.3 信号与槽函数连接145.2.4 界面布局设计145
9、.3 方块组合实现145.3.1 构造方块组合155.3.2 设置方块随机出现155.3.3 获取方块信息155.3.4 对方块进行变换165.3.5 方块的颜色设置165.4 游戏开始与暂停等功能实现175.5 游戏开始按钮处理175.6 按键处理事件185.7 游戏计时事件185.8 满行消行、等级划分、分数累加195.8.1 实现等级划分195.8.2 实现满行消行195.8.3 实现用户分数累加显示205.9 新方块的产生和下一方块的展示205.9.1 游戏新方块205.9.2 下一方块显示21第6章 俄罗斯方块游戏测试226.1 关于软件测试226.2 性能要求226.3 测试的结果
10、23参考文献25致 谢26第1章 绪 论1.1 游戏背景和意义俄罗斯方块的历史背景这个游戏的发明者是利用工作外空闲时间编程出来的,第一次问世是在1984年6月6号。俄罗斯方块游戏是由发明者最喜欢的运动(网球)和希腊字母前缀(tetra-)组合而成的。1989年4月21日,俄罗斯方块被当做唯一捆绑游戏随第一代Game Boy游戏机一同发售,在全球范围内卖出超过1亿台,直到现在也仍旧是一个了不起的数字。俄罗斯方块是游戏与娱乐形式相对匮乏的时代里的一个不可或缺的存在,Game Boy游戏机中的俄罗斯方块游戏是处于波斯湾战争期间的军人用于消磨时光的小游戏这个游戏能够至今还是被大家所熟知,并没有陨落。游
11、戏的运行规则是用户通过四个方向键改变方块的旋转方向、移动方向和位置等,方块是由四个正方形组成的。游戏过程中这些方块排列满一行或多行,系统消除方块,玩家分数和等级数值增加,剩下的方块移动到底部直到没有空间放置降落的方块。俄罗斯方块游戏的产权纠纷在历史中存在蛮多的,因为这个游戏容易开发,其他很多产品上面的俄罗斯方块游戏都是没得到授权就被开发。但很多产权纠纷的官司中,持有者却是败诉的,这说明像这种结构和逻辑十分简单的小游戏的产权纠纷中版权持有者是劣势的,致使很多游戏厂家都不想开发这种类型的游戏了。俄罗斯方块游戏操作规则简单、适用范围广,当时无人不晓,它在历史游戏中获得的评价极高,在很多杂志里面的游戏
12、访问中采访者对俄罗斯方块游戏的评分都十分高,认可了这个游戏的经典之处。1.1.1 游戏软件的现状和意义现在,除了美国、韩国等国家外,很多国家也发现了游戏商机,游戏行业越来越发达,已经慢慢成为全球娱乐类中最大的产业,每年有着大于200亿美元的收入。目前北美那边的游戏行业的产值已经差不多靠近整个影视产业的市值了,这些事实结论就可以看出游戏行业在众多行业中的地位以及其发展潜力之大。我国的游戏行业发展得晚,但有很多游戏都是在推出来的时候就备受年轻人喜欢,在2019年中游戏行业甚至有着947.3亿元的收入,这个数据比上年增加了13.5%,我国的游戏行业经过这几年的发展已经趋于平稳,扩展出去的销售等行业,
13、也处于很好的发展过程。游戏行业有着宏大的经济发展和大数量的用户,对游戏的规范和合理引导就是必不可少的,游戏开发不再仅限于实现功能,用户体验感和界面视觉效果变得越来越重要。所谓用户体验感就是实现交互设计,而整体界面视觉效果界面布局实现美观,游戏行业越来越注重界面设计,所以现在的游戏开发不再是简单的编程,还涉及到交互和设计等方面。1.1.2 课题实现的研究意义俄罗斯方块游戏进化发展到现在已经有1000多种版本了,开发不同版本的游戏需要不同运行环境的开发平台上运行,开发时容易受到软硬件环境的影响,这种影响限制了新技术的作用和功能的实现,许多成熟的软件成果就被搁置了,十分浪费。而且这是一个特别容易上手
14、的小游戏,编程也是比较简单,在玩游戏的过程中可以锻炼玩家的脑力,手机也能够进行一定的运动,大脑有进行思考,对身心都是十分有益的。 Qt可以在多系统上跨平台运转,还能够通过版本控制可视化编辑器和系统,这使编程变得更加方便。Qt能够让同一个源代码在不同的平台实现编译(Compile)和链接(Link),并且运行出来的结果完全一样,这种形式被叫做“一次编写,到处编译”。Qt Creator的跨平台特点一方面实现了编程,另一方面在开发过程中能够减少开发所用开支,还能够通过不同的开发平台环境发现到软件的不足,不断地改进和完善功能软件。这次课题的开发实现,让我能够熟练运用QT相关开发软件和深入学习C+语言
15、,在这个过程中我充分体会到这两者相结合的独到之处;与此同时,我学会通过思考问题并运用已学内容解决问题,将我自己已经学习的内容进一步稳固,又能够学习到新的内容。第2章 课题实现的可行性分析2.1 课题的设计目的完成本次游戏开发的毕业设计任务;掌握C+编程语言的特点并用此语言完成代码编写;本次设计是基于拥有跨平台的集成开发环境的Qt软件的,熟练掌握Qt编程软件,并且领略平台的独特,掌握跨平台开发的精华;体会跨平台开发软件在代码开发过程中的贡献之处。通过本次毕业设计熟悉软件开发过程,学会将理想与实践两者完美地相结合,在实践开发这个将已经拥有的知识巩固起来,并且不断学习新知识,不断总结解决困难的办法。
16、2.2 可行性研究前提2.2.1 课题研究的基本要求课题的要求是实现游戏开发的逻辑可操作性、界面美观性、及时反映性、方便性、游戏兼容性;在编码时须遵照标准,使程序编码整体严谨有依据、有序,富有逻辑,并且易于理解,在开发时也须根据计算机软件开发标准,利用面向对象分析与设计(00AD)方法,实现游戏的基本功能,图形化界面是符合美观性的,通过用户按键实现开始和暂停等,游戏进行过程中玩家可通过键盘四个方向键控制方块翻转、下降等,方块在底部满行消除,且分数累加显示。2.2.2 课题研究的目的研究该课题过程中我能感受到俄罗斯方块这种简单游戏的独特之处,体验游戏设计与开发的趣味所在;期望最后能够很好地运用Q
17、T相关开发软件并且可以进一步地了解到其跨平台地特点、并且对C+编程语言有进一步的掌握,编程和思考逻辑能力等能有所提高。随着俄罗斯游戏的代码编写和设计,检验了学习效果和动手能力,把拥有的知识运行到开发项目中,巩固所学知识基础,加深理解。2.2.3 课题研究的基本方法本课题利用行动研究法、文献研究法、经验总结法、案例研究法,测试法等研究基本方法。根据课题题目对整体剖析研究,通过分析建立数据模型等步骤一步步对系统分析成部分,然后画出程序流程图、用例图,对整体功能实现进行描述最终建立出系统逻辑结构。分析结构建立基本架构之后需要后期慢慢进行对游戏功能进行补充和完善,整个过程下来能够使系统整体结构更加完善
18、、数据持久性设计、代码逻辑顺通要求以及界面美观设计,最终实现软件相应功能,完成本次课程开发与实现任务。2.3 可行性分析技术可行性分析:本次毕业设计课题是基于Qt Creator开发环境平台,通过C+语言编写代码实现游戏基本功能。因为Qt具有跨平台性,能够使同一个源代码在不同的平台软件上面编译链接运行出一模一样的结果,利用这种“一次编写,到处编译”的方法给跨平台通用软件的开发给予了极大的支持,给编程人员带来很大的便利。因此此设计课题在技术可行性上是能够进行合理设计的。经济可行性:这只是一个毕业设计课题,并不需要支付任何经济成本和产生任何经济效益,主要需要一台电脑及线管开发环境平台即可完成设计,
19、因此在经济可行性上是满足开发要求的。使用可行性:此课题主要完成游戏开始等功能,界面整体简单,玩家通过键盘掌控方块,方块下降后实现整行或者多行消除,消除成功后得到积分。因此游戏整体功能与界面设计实现好后就可以运行供使用,因此具有使用可行性。社会可行性:本次课题设计属于个人毕业设计,主要由毕业生本人独立完成,与社会发展无直接关系,不会出现各种社会问题。2.4 游戏设计结论意见根据上述可行性研究分析与思考,本次基于QT俄罗斯方块游戏设计与实现在可行性研究上是具有绝对可行的,并且拥有一定的使用价值,可以作为毕业设计课题研究开发。第3章 需求分析3.1 需求分析的含义和目的需求分析就是指将疑难点进行具体
20、剖析,将问题需要解决的要求搞清楚,如输入的内容和获得的成果分别是什么,回馈给用户的结果是怎样的;需求分析可以帮助我们确定对计算机系统的需求,确定对最后输出的结果的需求,可见一定的需求分析是十分重要的。在软件工程中,需求分析是指将系统建立的目的、使用范围和所含功能等描述出来。在开发时需求分析过程是十分关键和重要的,这个过程首先需将客户的需求确定下来,只有确定需求后,编程人员才可以开始着手分析需求并得到好的解决方法。有很多人觉得需求分析在软件开发过程中是最简单的,但随着时间的沉淀,人们开始意识到需求分析的重要之处,它是不可或缺的。一个项目最主要就是在规定时间内解决客户的需求,假如在需求分析过程中因
21、为轻视而导致我们不能正确理解到用户的需求,那么最后出来的项目肯定是不符合客户需求的。需求分析报告能使代码更加规范化,管理者能更好地管制和操控开发过程,将开发人员和客户之间的沟通目的更好地在开发过程中体现出来,开发需求报告分析能够使程序员更好地根据用户需求编写程序;并且这个报告在后期能够为最终工作成果提供本始根据,期待在更大范围内生产使用。3.2 游戏的开发需求以俄罗斯方块游戏为载体开发能够让编程人员在开发过程中充分感受到游戏开发的经典,感受这种简单操作上手的游戏背后蕴涵的精妙,让开发人员能够在整个开发过程中有趣地学习到知识;这个课题是借助Qt环境平台,使用C+编程语言开发的,所以在编程的过程中
22、,学习到Qt软件的使用方法、领悟编程语言的魅力,并体会到两者之间结合的独特之处。 这个游戏是通过键盘对方块进行移动、旋转和摆放等,让这些方块能够通过排列消除得分。具体实现过程是游戏开始会有由方形随机组成的不同形状的组合陆续从屏幕上方落下,用户按下键盘上的上下左右四个键就可以对方块组合的位置还有方向进行调整,方块可在底部排成满一/多行并清除,用户分数得到叠加。剩下的方块慢慢堆积直到触碰到界面顶部,游戏结束,用户被通知游戏失败。通过前面的需求分析报告,确定此开发最终需要具有以下基本功能:(1)游戏界面布局:界面代表着用户最直接的视觉体验。这个毕业设计课题的图形界面要满足包括按钮与显示方块翻转降落消
23、除等过程的界面,以及用户分数显示框等;(2)点击处理:用户用鼠标点击界面按钮,实现按钮功能;(3)实现方块组合:通过不同方块组合实现游戏,共有七种基础形状(一字型、Z形状、反Z形、正方形、L形状、反L形、T字型),这些方块在界面中进行自由下落运动;(4)键盘按键事件处理:游戏过程中用户点击键盘操控方块,其中上键来可让随机出现的方块旋转、左右两键控制方块移动方向、而键盘下键能够让方块快速下落到界面底部。(5)积分实现:方块排列成完整一/多行实现消除,未消除的方块向下移动,消除后累计的分数加到界面显示的用户分数框中显示。3.3 俄罗斯方块游戏开发环境平台操作系统:Microsoft Windows
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 QT 俄罗斯方块 游戏 设计 实现
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内