当前位置:首页>> >>


基于QT的俄罗斯方块游戏设计与实现.rar

收藏

资源目录
    文档预览:
    编号:20180914220935491    类型:共享资源    大小:4.69MB    格式:RAR    上传时间:2018-09-15
    尺寸:148x200像素    分辨率:72dpi   颜色:RGB    工具:   
    50
    金币
    关 键 词:
    基于 QT 俄罗斯方块 游戏 设计 实现
    资源描述:
    太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸i 基于 QT的俄罗斯方块游戏设计与实现摘 要为了能够更进一步掌握 Qt 编程,我决定用 Qt 开发一个单机版的的俄罗斯方块游戏。俄罗斯方块的实现由四块正方形的色块组成,计算机随机产生不同七种类型的方块,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作,(控制键的实现是由键盘的方向键的事件处理实现)。然后程序根据这七种方块堆叠成各种不同的模型。本次设计用到的工具是基于 UBUNTU 或 windows 下的 QT 软件实现,图行界面的处理都是代码实现.论文描述了游戏的历史,开发此游戏的环境,游戏开发的意义。遵循软件工程的知识,从软件问题定义开始,接着进行可行性研究、需求分析、概要设计、详细设计,最后对软件进行了测试,整个开发过程贯穿软件工程的知识体系。本游戏操作简单,界面清晰,让玩家容易上手操作。关键词:游戏设计;算法;数组;事件;QT太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸ii Design and implementation of Tetris, based on the QTABSTRACTIn order to further grasp the Qt programming, I decided to use Qt to develop a stand-alone version of the game tetris.Tetris implementation is composed of four square of color piece, the computer randomly generate different seven types of square, according to the control it in a certain amount of time on the computer clock, users according to the four keyboard direction key control flip, left, right and down operation, (the realization of the control key is by the keyboard direction key event handling implementation).Then the program according to the seven squares stack into a variety of different models.The design tool used is based on the QT under UBUNTU or windows software, the graph line interface processing is code to achieve.The thesis has described the game history , has developed this game environment, development significance of game. Knowledge abiding by a software engineering, definition begins from software problem , proceed to carry out feasibility study , need analysis , essentials design , detailed design, the at last has carried out a testing on the software , entire exploitation process has run through the software engineering knowledge hierarchy. This game is simple, clear interface, easy operation for players.Key words:game design;calculate way;several;event;QT太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸目 录摘 要 ......................................................................................................................................................................iABSTRACT............................................................................................................................................................ii目 录 ......................................................................................................................................................................31绪 论 ...................................................................................................................................................................11.1 开发目的 ...................................................................................................................................................11.2 俄罗斯方块游戏的现状 ...........................................................................................................................11.3 研究的主要内容 .......................................................................................................................................21.4 研究的意义 ...............................................................................................................................................22 可行性研究 ..........................................................................................................................................................42.1 设计目的 ...................................................................................................................................................42.2 软件问题定义 ...........................................................................................................................................42.3 可行性分析 ..............................................................................................................................................42.3.1技术可行性 ...................................................................................................................................42.3.2经济可行性 ...................................................................................................................................42.3.3操作可行性 ...................................................................................................................................52.3.4法律可行性 ...................................................................................................................................52.4 结论意见 ..................................................................................................................................................53需求分析 ...............................................................................................................................................................63.1 引言 ..........................................................................................................................................................63.2游戏功能分析 ...........................................................................................................................................63.2.1 系统概述 ........................................................................................................................................63.2.2 系统运行环境 ................................................................................................................................73.3 游戏的 UML 基本模型 ............................................................................................................................73.3.1 游戏的用例图 ................................................................................................................................73.3.2 游戏的状态图 ................................................................................................................................83.3.3 游戏的活动图 ................................................................................................................................94游戏详细设计 .....................................................................................................................................................114.1 图形实体类 TetrixPiece实现 ............................................................................................................114.1.1 图形的产生 ................................................................................................................................114.1.2 图形的旋转 ................................................................................................................................124.2 游戏内容的实现 ....................................................................................................................................134.2.1 游戏实现控制方式 ....................................................................................................................134.2.2 方块下移 ....................................................................................................................................134.2.3 满行及消行判断 ........................................................................................................................144.2.4 绘制游戏区域及方块 ................................................................................................................144.2.5 键盘事件响应 ............................................................................................................................144.3 游戏主窗体的实现 ................................................................................................................................145代码分析 .............................................................................................................................................................165.1 Tetrix工程 ...........................................................................................................................................165.2 main.cpp主程序代码: .........................................................................................................................165.3 tetrixboard.h头文件代码: ...............................................................................................................17太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸5.4 tetrixboard.cpp程序代码: ...............................................................................................................185.4.1游戏初始化,复位的实现 .........................................................................................................185.4.2 游戏开始与暂停 ........................................................................................................................195.4.3 按键控制游戏 ............................................................................................................................205.4.4计时模块 .....................................................................................................................................215.4.5 方块的活动 ................................................................................................................................215.4.6 过关与奖励 ................................................................................................................................225.4.7 方块颜色控制 ............................................................................................................................235.5 tetrixpiece.h头文件代码: ...............................................................................................................245.6 tetrixpiece.cpp程序代码: ...............................................................................................................255.7 tetrixwindow.h头文件代码: .............................................................................................................265.8 tetrixwindow.cpp程序代码 ...............................................................................................................275.8.1显示框 .........................................................................................................................................275.8.2功能按钮 .....................................................................................................................................275.8.3信号与槽 .....................................................................................................................................285.8.4游戏面板布局 .............................................................................................................................286整体测试 .............................................................................................................................................................296.1游戏运行测试 .........................................................................................................................................296.2游戏界面测试 .........................................................................................................................................296.3界面功能测试 .........................................................................................................................................306.4 测试总结 ................................................................................................................................................33结 论 ....................................................................................................................................................................34致 谢 ....................................................................................................................................................................36参考文献 ................................................................................................................................................................37外文原文 ................................................................................................................................................................39中文翻译 ................................................................................................................................................................47太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸1 1绪 论1.1 开发目的在现金电子信息高速发展的时代,电子游戏已深入人们的日常生活,由于经典有趣,因而得到了广泛的流行,成为老少皆宜的娱乐方式。俄罗斯方块是一款风靡全球的游戏,最初是由苏联人制作的,规则简单,容易上手且游戏全过程变化无穷,可以让玩家充分感受游戏中的乐趣。俄罗斯方块游戏可以说是随计算机的发展而发展,并不断推陈出新演变出各种类似游戏, 深受广大玩家喜爱。这个游戏有的简单, 有的复杂, 但其根本原理是一样的都是对运动的方块进行组合, 来训练玩家的反应能力。谈到游戏软件, 大多数人都认为其神妙莫测, 高不可及。而一般游戏软件也确实具有很高的技术难度, 随着开发工具及软件开发方法学的不断发展, 动手开发游戏也不是十分困难的。俄罗斯方块游游戏软件不计其数, 网上就有好多关于实现的复杂算法和设计, 其难度让一般初学者望而却步。而俄罗斯方块是编程的入门项目,它可以检验编辑人员的知识熟练程度。在游戏设计方面,俄罗斯方块游戏的设计工作既复杂又富有挑战性,它包含的内容多,涉及的知识广泛,与图形界面联系比较大。。 游戏是一种新兴的媒体,是一种新的设计领域,也是一种新的艺术形式。同时开发电脑游戏可以提高学生研究和学习的兴趣,培养他们通过互联网收集和获得信息、分析整理信息、撰写报告论文等能力。俄罗斯方块的开发无疑是给电脑游戏的增加了色彩,拓宽了电脑游戏的平台,给人们带来乐趣。1.2 俄罗斯方块游戏的现状小方块的魅力经久不衰。截至 2009 年,俄罗斯方块发售了 1.25 亿份,受到 50多个国家和地区的玩家喜爱,有超过 50 种语言的版本,运行在几十种游戏平台 上,从掌机、街机、个人电脑,到手机和 PDA。美国蓝色行星软件公司总裁亨克·罗杰斯说,移动设备已经成为俄罗斯方块新的主要平台,该领域的发售量已超过 7500 万份,并且还在快速增长。在俄罗斯方块网络版的北美和欧洲官方网站上,每天超过 100 万人次玩这个游戏。俄罗斯方块成功的奥妙在哪里?它的创造者帕基特诺夫认为,可能在于这个游戏非常简单,而且拼图的过程有“从混乱中寻找秩序”的成就感。罗杰斯则说,俄罗斯方 块是一个建设性的游戏,这一点与中国的围棋相似,“国际象棋就是杀杀杀,围棋则重视构建领地,是建设性的,俄罗斯方块也是”。25 年过去了,电脑业和电子游戏业都发生了巨大变化,拥有华丽画面、震撼音效和丰富剧情的大型游戏包括网络游戏纷纷出现,开辟并占据了新的市场。俄罗斯方块这样的游戏还有前途吗?帕基特诺夫认为还很有前途。他说,俄罗斯方块是一个休闲游戏,它面对的是那些没有精力或兴趣玩大型游戏的玩家,这些人需要一类简单好 玩的游戏,拿起来就能进入状态,在忙碌的生活中寻求片刻放松。帕基特诺夫表示,将太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸2 对俄罗斯方块进行改进,使人们能够更容易从中获得休闲乐趣。罗杰斯说,今后的努力方向包括发展俄罗斯方块的竞技性,开发能够适应玩家特点的“智能”俄罗斯方块,并使来自世界各地、说不同语言的人们能够一起娱乐,通过这个游戏寻求共同点。对于中国市场,现在俄罗斯方块已集成到即时通讯软件中国腾讯 QQ 中,即为火拼俄罗斯。另外,联众世界也有单机版的俄罗斯方块和网络版的俄罗斯方块。由此看来,俄罗斯方块经典还将继续。1.3 研究的主要内容俄罗斯方块是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。这款游戏最初是由苏联的游戏制作人 Alex Pajitnov 制作的,它看似简单但却变化无穷,令人上瘾。相信大多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时代。 从游戏的基本玩法出发,主要就是俄罗斯方块的形状和旋转,我在设计中在一个图片框中构造了一些的网状小块,由这些小块组合成新的形状,每四个小块连接在一起就可以构造出一种造型,因此我总共设计了 7 种造型,每种造型又可以通过旋转而变化出 24 种形状,利用随机函数在一个预览窗体中提前展示形状供用户参考,在游戏窗体中用户就可以使用键盘的方向键来控制方块的运动,然后对每一行进行判断,如果有某行的方块是满的,则消除这行的方块,并且使上面的方块自由下落,最后就可以得出用户的分数。1.4 研究的意义那么研究基于 Qt 的俄罗斯方块游戏有什么意义呢?虽然目前俄罗斯方块游戏已经有各种语言的不同版本,并且已经将其搬上了网络的平台,单人、双人单机对战和双人网络对战等各种模式均已被大众熟知。由于开发平台不统一,造成软件的管理和使用极不方便,并且容易受到软硬件环境更新的影响,限制了这些新技术在科研生产中发挥更好的作用.如果舍弃原有软件而重新开发,将会耗费大量的人力和资金,而且浪费了许多成熟的软件成果。而 Qt 在源代码级上实现了跨平台特性,极大的支持了跨平台通用软件的开发。Qt可以用同一个源程序在不同平台上编译链接,生成目标代码,并取得相同的运行效果,称为“一次编写,随处编译”,利用这种方法充分实现了程序的跨平台运行。这种基于源代码的跨平台特性不仅解决了性能的问题,而且可以发挥各个平台的优势,充分利用每个平台自身的特点;并且即可以在新环境下实现原有软件的功能和特点,减少开发费用,还可以改进原有软件的不足,增加新的需求,从而提高软件的质量,延长软件生命期。因此,利用 Linux 下基于 Qt 的应用程序开发是一个非常有意义的课题,具有重要的研究和商业价值。另外,通过本游戏的设计,检验了学习效果和动手能力,进一步深入 Qt 的学习,提高自己的编程水平,从而达到理论与实践相结合的目的。太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸3 在成为一个真正的游戏开发者的路上,俄罗斯方块是一个完美开始。为什么?因为它包括任何一个游戏中所有的元素。并且,不需要艺术家般的才能就能做出非常好看的俄罗斯方块游戏。任何一个能画出方块的人,每个作图形程序的人,就能做出商业品质的俄罗斯方块游戏。以俄罗斯方块开始还有另外一个好处,不仅能做出一个完整的既好玩又容易上瘾游戏,而且它看上来和那些商业版本没什么区别。方块就是方块,不管是谁画出它们的,而且 tetraminos(俄罗斯方块中使用的形状)也不过是一些方块的组合。俄罗斯方块拥有所有游戏共通的独立成份。它有一个游戏循环(这个过程被反复执行直到游戏退出)。这个游戏循环读取玩家的输入,处理这个输入,然后更新游戏的元素(下落的 tetraminos),并且检查是输还是赢。以后要做的所有的简单的游戏都要用到这些东西,所以学习这个过程并且实现它是非常重要的。当第一次完成它之后,以后再做游戏时就能看出那个游戏有多难以及要花多长时间。如果没有完整的完成过这些,哪怕一次,就永远不能完整地正确领会其中的每个元素。当做大的项目时,就更不能确定其复杂性及所要的时间。如果甚至不能正确地领会这整个过程(因为你没能完成它),可能是没能建立一个合适的时间表或估计合适的时间,更有可能的是不够努力。还有,玩俄罗斯方块可以练习人的反映能力,开始时快速的下降会让人手无足措,但适应了之后就会发现自己的反应力变的很快了。另外长时间的手指活动可以让人血液流通加快有利健康。还有俄罗斯方块高手都知道要想赢,就要有远大的布局,决不能只局限于一点一点的减,这在无形中就提高了人的智慧。 太 原 理 工 大 学 毕 业 设 计 (论 文 )用 纸4 2 可行性研究2.1 设计目的通过俄罗斯方块的设计
    展开阅读全文
    1
      金牌文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:基于QT的俄罗斯方块游戏设计与实现.rar
    链接地址:http://www.gold-doc.com/p-158455.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们
    copyright@ 2014-2018 金牌文库网站版权所有
    经营许可证编号:浙ICP备15046084号-3
    收起
    展开