俄罗斯方块论文 俄罗斯方块设计报告.doc
仰恩大学毕业设计(论文)I摘要在现今电子信息高速发展的时代,电子游戏已经深入人们的日常生活,成为老少皆宜的娱乐方式。但是游戏设计结合了日新月异的技术,在一个产品中整合了复杂的设计、艺术、声音和软件,所以并不是人人皆知。直到今天,在中国从事游戏设计的人仍然很少,但是游戏行业的发展之快,远超如家电、汽车等传统行业,也正因为如此,游戏人才的教育、培养远落后于产业的发展。俄罗斯方块是个老幼皆宜的小游戏,它实现由四块正方形的色块组成,然后存储在一个数组的四个元素中,计算机随机产生不同七种类型的方块,根据计算机时钟控制它在一定的时间不停的产生,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作,(控制键的实现是由键盘的方向键的事件处理实现)。然后程序根据这七种方块堆叠成各种不同的模型。论文描述了游戏的历史,开发此游戏的环境,游戏开发的意义。遵循软件工程的知识,从软件问题定义开始,接着进行可行性研究、需求分析、概要设计、详细设计,最后对软件进行了测试,整个开发过程贯穿软件工程的知识体系。此次设计在MicrosoftWindowsXP系统下,以Java为开发语言,在eclipse开发平台上进行游戏的设计与实践。关键词:游戏设计;算法;数组;事件仰恩大学毕业设计(论文)II目录摘要··········································································································IAbstract··················································································错误!未定义书签。目录············································································································II引言··········································································································11绪论···········································································································21.1电子游戏及其分类···············································································21.2电子游戏发展现状·················································································21.2.1电子游戏在国外的发展现状···························································21.2.2电子游戏在国内的发展现状···························································32可行性研究··································································································52.1设计目的·····························································································52.2软件问题定义·······················································································52.3可行性分析··························································································53需求分析·····································································································63.1引言···································································································63.2游戏需求·····························································································63.3软硬件需求··························································································73.4接口控制·····························································································73.5方案论证·····························································································73.5.1VB的优点···················································································73.5.2C+的优点··················································································83.5.3Java的优点···············································································83.5.4方案的选择················································································94概要设计································································································1041游戏设计方案的确定·········································································1042系统流程结构设计············································································1143各个功能模块图设计·········································································114.3.1模型层(Model)功能模块图设计···················································114.3.2视图层(View)功能模块图设计·····················································124.3.3控制层(Controller)功能模块图设计···········································125详细设计·································································································13仰恩大学毕业设计(论文)III5.1模型层(Model)设计·············································································135.1.1图形的产生··············································································135.1.2图形的数据结构········································································135.1.4图形的变形··············································································145.1.5存储和表示障碍物·····································································145.1.6判断满行及消行········································································155.2视图层(View)设计···············································································165.2.1方块的显示··············································································165.2.2障碍物的显示···········································································175.3控制层(Controller)设计·····································································175.4游戏演示···························································································185.4.1游戏界面显示···········································································185.4.2开始和结束控制菜单·································································185.4.3分数和等级查看菜单································································195.4.4变换方块菜单···········································································195.4.5帮助菜单·················································································205系统测试···································································································205.1游戏界面菜单选项的功能测试······························································205.2按键事件的功能测试···········································································215.3方块堆砌与消行测试············································································215.4测试结果分析·····················································································21结论···········································································································22致谢···········································································································23参考文献···································································································23仰恩大学毕业设计(论文)1引言游戏是人们活动中一项非常重要的内容,有人认为如果哪一天人类对所有的游戏都失去兴趣,恐怕世界的末日就要到了。电脑对游戏的贡献有目共睹,现在摸过电脑的人很少有没玩过电脑游戏的,喜欢游戏的人也很少有不玩电脑的。俄罗斯方块是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。这款游戏最初是由苏联的游戏制作人AlexPajitnov制作的,它看似简单但却变化无穷,令人上瘾。相信大多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时代。究其历史,俄罗斯方块最早还是出现在PC机上,而我国的用户都是通过红白机了解、喜欢上它的。现在联众又将重新掀起这股让人沉迷的俄罗斯方块风潮。对一般用户来说,它的规则简单,容易上手,且游戏过程变化无穷,而在"联众俄罗斯方块"中,更有一些联众网络游戏所独有的魅力有单机作战与两人在线对战两种模式,用户可任选一种进行游戏。网络模式还增加了积分制,使用户既能感受到游戏中的乐趣,也给用户提供了一个展现自己高超技艺的场所。俄罗斯方块游戏可以说是随计算机的发展而发展,并不断推陈出新演变出各种类似游戏,深受广大玩家喜爱。这个游戏有的简单,有的复杂,但其根本原理是一样的都是对运动的方块进行组合,来训练玩家的反应能力。谈到游戏软件,大多数人都认为其神妙莫测,高不可及。而一般游戏软件也确实具有很高的技术难度,随着开发工具及软件开发方法学的不断发展,动手开发游戏也不是十分困难的。俄罗斯方块游戏是一种古老而又有趣的游戏,游戏软件不计其数,网上就有好多关于实现的复杂算法和设计,其难度让一般初学者望而却步。本文利用数组作为方块的数据结构,提出一种用JAVA语言实现的简易方法,对初学者可仿此开发类似游戏,并了解游戏软件的设计与开发过程。