当前位置:文档之家› 俄罗斯方块游戏系统设计(含完整程序)

俄罗斯方块游戏系统设计(含完整程序)

毕业设计(论文)正文题目俄罗斯方块游戏专业班级姓名学号指导教师职称俄罗斯方块游戏摘要: 在现代信息高速发展的时代,电子游戏已经深入了人们的日常生活,成为了老少咸宜的娱乐方式,但是游戏设计结合了日新月异的技术,在一个产品中整合了复杂的艺术,设计,声音和软件,所以并不是人人皆知,直到今天,在中国从事游戏设计的人仍然很少,但是游戏行业的发展之快,远超如汽车,家电等传统行业,也正因为如此,游戏人才的教育培养远落后于行业的发展。

俄罗斯方块是一个老少咸宜的小游戏,它实现有四个正方形的色块组成,然后存储于一个数组的四个元素中,计算机随机产生七种不同类型的方块,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键进行向左,向右,向下,翻转操作。

然后程序根据这七种方块折叠成各种不同的类型。

论文描述了游戏开发的背景,意义,算法分析,功能实现,功能测试。

以C++为开发语言进行设计与实现。

关键词:电子游戏,算法,C++,测试The Russian square pieceAbstract :In the era of high-speed development of electronic of information, computer game has enter people’s daily life, become an amusement adapt to old and young. But game design is a combination of fast-moving technology ,the complexity of integrating design,art,audio and software into a single production,so this thechnology isn’t known by everyone .up-to-date,there are few people work at game design all the same,whereas,thedevelopment of game industry more faster than traditional industry as home ap pliances and automobile,by the reason of this situation,the education and training of person with ablity of game design drop behind the development of game industry.The Russian square piece is a get-away drama with all proper old young ,it carry out to be constitute by four pieces of colours of exact square piece ,then save in one four chemical elements of the piece set ,random creation dissimilarity of calculator seven the square piece of the category type ,control it according to the calculator clock in certain time continuously creation , the customer is inside out according to four directions key control of the keyboard ,toleft ,rightwards and get down ,(the realization of the control key is to be carry out by the event handing of the direction key of the keyboard) Then the procedure pileds according to these seven kinds of square pieces various different model.The thesis has described the game history ,has developed this 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,the at last has carried out a testing on the software engineering knowledge hierarchy .The computer games design and practice are designed o eclipse developing platform with C++ developing instrument ,under Microsoft Windows XP system this time.Key Words: electronic game calculate way C++ test目录1引言 (1)1.1课题背景 (1)1.2毕设意义 (2)2需求与算法分析 (3)2.1需求分析 (3)2.1.1 游戏需求 (3)2.1.2游戏界面需求 (4)2.1.3 游戏形状(方块)需求 (4)2.2算法分析 (5)2.2.1定义方块的数据结构 (5)2.2.2俄罗斯方块流程 (5)3系统功能实现 (7)3.1产生主窗口 (7)3.2定义俄罗斯方块数据结构 (8)3.3游戏的主逻辑 (9)3.4销行功能实现 (11)3.5中断操作流程的实现 (13)3.6变形的实现 (15)3.7 游戏区域绘图的实现 (16)3.8 游戏方块绘制 (20)3.9 烟花燃放功能 (22)4功能测试 (24)4.1测试环境 (24)4.2图像功能测试 (24)4.3销行和计分功能测试 (27)4.4速度功能测试 (28)5总结 (29)[参考文献] (30)致谢 (31)俄罗斯方块的程序设计1引言计算机游戏产业在随着网络的发展有了长足的发展。

游戏最早起源于纯文字的交互游戏MUD,MUD是英文Multi-user Dungeons的缩写。

纯文字交互,顾名思义,是一纯文字的形式来进行游戏。

即,所有的场景描述、物品的样子、所有人的行动、时间的描述都是用文字的方式表达的。

总之,文字MUD是一个很需要想象力的游戏形式,需要从文字转化成玩家自己脑海中的现实场景。

随着电子元器件的发展,电子产品迅速发展。

掌上游戏机和电视游戏机在80年代和90年代风靡一时,此时由苏联人Alex Pajitnov制作的游戏俄罗斯方块在掌上游戏机和电视游戏机上流行,其造成的轰动和经济价值成为游戏史上的大事。

所以本文通过用C++实现俄罗斯方块学习游戏的整个设计和测试过程,学习用基于Windows 的游戏程序设计。

1.1课题背景俄罗斯方块是个老幼皆宜的小游戏,它实现由四块正方形的色块组成,然后存储在一个数组的四个元素中,计算机随机产生不同七种类型的方块,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作,(控制键的实现是由键盘的方向键的消息函数实现)。

然后程序根据这七种方块堆叠成各种不同的模型。

基于Windows的游戏设计有很多方式,如基于java跨平台的设计,基于.net平台的设计和基于MFC的设计,三种设计各有优缺。

基于java的设计能够充分运用java 跨平台的特性,便于移植,可以做到一次代码在不同环境下的运行,从而大大提高可移植性,便于在移动设备上运行,但是基于java的设计由于运行在虚拟机上,效率比较低。

基于.net平台的设计可以利用.net平台提高的接口大大简化设计过程,然而其通用性不好,需要.net平台支持,在执行效率上也不如MFC程序。

基于MFC的程序设计具有执行高效的特点,跟windows的契合比较好,但不具有跨平台能力。

相比三种设计方案,为了能够在Windows平台上以更好的性能运行,本文采用VC++基于MFC的设计,来完成俄罗斯方块的游戏。

1.2毕设意义此次毕设通过用C++设计与实现俄罗斯方块游戏。

包括系统的需求分析;系统总框图及每个模块的设计分析;MFC应用程序架构;框架的扩展;算法的设计与实现;游戏的内部实现;游戏区域绘图的实现;系统存在的问题及错误处理;以及游戏的测试和改进。

通过此次毕业设计,我对软件设计的过程有了清晰的认识,通过编写游戏的各个方面工作学习了设计思想,程序架构,数据结构和算法,同时也对windows程序设计特别是基于MFC的程序设计有了直观的认识。

通过游戏的测试学习到了常用的测试过程,测试方法。

2需求与算法分析2.1需求分析2.1.1 游戏需求功能性需求如下:随机给出不同的形状(长条形、Z字形、反Z形、田字形、7字形、反7形、T字型)下落填充给定的区域,若填满一条便消掉,记分,若同时消去两行以上则会放烟花来庆祝,游戏可以设置难度,难度主要由方块的下降速度决定,下降速度越大难度越大,若在游戏中各形状填满了给定区域,为输者。

如下表(表2.1)为游戏功能性需求表。

表2.1示例作为玩家,玩家可以控制难度,查看帮助等,对于操作性的需求如下:◆玩家可以自己来控制方块下落的速度。

◆玩家可以自己来控制游戏的难度。

◆玩家可以看到游戏的积分。

◆对本游戏有帮助说明和作者介绍等2.1.2游戏界面需求良好的用户界面,有提示显示和分数显示。

让方块在一定的区域内运动和变形,该区域用一种颜色表明,即用一种颜色作为背景,最好设为黑色。

还需用另一种颜色把黑色围起来,宽度适中,要实现美感。

将整体界面分为三部分:左侧半部分用来存放俄罗斯方块,是游戏的活动区,用户操作的图形变化在这个主界面区完成。

右上侧部分显示下一次要产生的俄罗斯方块形状,以便用户预先知道,增加游戏的可玩性。

右侧下半部分用来显示用户的分数和当前等级,以便让用户有成就感增加可玩性。

相关主题