毕业设计(论文)俄罗斯方块游戏程序设计

上传人:re****.1 文档编号:460430133 上传时间:2022-08-14 格式:DOC 页数:42 大小:266.53KB
返回 下载 相关 举报
毕业设计(论文)俄罗斯方块游戏程序设计_第1页
第1页 / 共42页
毕业设计(论文)俄罗斯方块游戏程序设计_第2页
第2页 / 共42页
毕业设计(论文)俄罗斯方块游戏程序设计_第3页
第3页 / 共42页
毕业设计(论文)俄罗斯方块游戏程序设计_第4页
第4页 / 共42页
毕业设计(论文)俄罗斯方块游戏程序设计_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《毕业设计(论文)俄罗斯方块游戏程序设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)俄罗斯方块游戏程序设计(42页珍藏版)》请在金锄头文库上搜索。

1、大连大学本科毕业设计 俄罗斯方块游戏程序设计1 中文摘要 游戏是人们活动中一项非常重要的内容,有人认为如果哪一天人类对所有的游戏都失去兴趣,恐怕世界的末日就要到了。电脑对游戏的贡献有目共睹,现在摸过电脑的人很少有没玩过电脑游戏的,喜欢游戏的人也很少有不玩电脑的。 随着越来越多的人接触计算机开始,人们对游戏的要求也越来越高,网络游戏占据着计算机游戏非常大的市场,但是很多人同时也特别喜欢玩单机游戏,单机游戏(ConsoleGame),指仅使用一台计算机或者其它游戏平台就可以独立运行的电子游戏。区别于网络游戏,它不需要专门的服务器便可以正常运转游戏,部分也可以通过局域网或者战网进行多人对战。游戏玩家

2、不连入互联网即可在自己的电脑上玩的游戏,模式多为人机对战。为其不能连入互联网而互动性稍显差了一些,但以通过局域网的连接进行多人对战,而不需要专门服务器也可以正常运行的游戏。所以一个好的单机游戏会受到世界上非常多人的追捧。 俄罗斯方块游戏是一款风靡全球的电视游戏机和掌上游戏机游戏,目前在QQ游戏和很多的游戏平台上都能见到俄罗斯方块的身影。这款游戏最初是由苏联的游戏制作人Alex Pajitnov制作的,它看似简单但却变化无穷,令人上瘾。相信大多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时代。究其历史,俄罗斯方块最早还是出现在PC机上,而我国的用户都是通过红白机了解、喜欢上它的。现在联众

3、又将重新掀起这股让人沉迷的俄罗斯方块风潮。对一般用户来说,它的规则简单,容易上手,且游戏过程变化无穷,而在联众俄罗斯方块中,更有一些联众网络游戏所独有的魅力有单机作战与两人在线对战两种模式,用户可任选一种进行游戏。网络模式还增加了积分制,使用户既能感受到游戏中的乐趣,也给用户提供了一个展现自己高超技艺的场所。而它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。无可争议,俄罗斯方块是有史以来最伟大的游戏之一它是永恒的娱乐经典,但它实际上又和那些传统的经典娱乐方式不同,因为它的本质是电子化的,所以它的确属于现代产物俄罗斯方块举世闻名的游戏性,在该游戏新鲜出炉时就显得非常直观某些与坠落的玩

4、具碎片和它们的形状有关的东西,使得哪怕新手也会很自然地企图把它们排列起来,并加以适当组合,就好似俄罗斯方块触动了我们某些内在的感官,使得哪怕是我们当中最杂乱无章的人也要把事情整理妥当。1.1 电子游戏及其分类 电子游戏,也就是运行在家用电脑、家用电子游戏机或是掌中宝游戏机及街机上的电子游戏程序。电子游戏是一种结合剧情故事、美术、音乐、动画、程序等技术于一身的互动型娱乐软件,涉及到多个行业。 从电子游戏的分类来看,有着多种分类方式。传统的游戏分类是按照游戏类型,将其分为即时战略游戏、第一人称射击游戏、角色扮演游戏、策略型游戏等类别。根据游戏运行平台的不同,可将电子游戏分为游戏机游戏、单机版PC

5、游戏、互动电视游戏、在线游戏和手机游戏。1.2 电子游戏发展现状1.2.1电子游戏在国外的发展现状 真正的电子游戏机产生于20世纪70年代。1971年,麻省理工学院的学生Nolan Bushnell设计了世界上的黑白电视机作为显示屏,用一个控制柄作为操纵器,不过由于市场因素这款游戏以失败告终。但是最后他在电子游戏的发展上取得了非凡的成就。可以说时至今日,电子游戏仍然是外国的天下。1.2.2 电子游戏在国内的发展现状 与电子游戏发达的国家相比,我国在电子游戏方面还存在比较大的差距。目前,我国游戏市场正处于发展阶段,但市场上的游戏软件主要来自日本、美国、韩国等地,但由本土游戏制作人开发创作的游戏正

6、在高速增加,国产原创的游戏即将成为游戏的主流。 2 可行性研究2.1 设计目的 综合运用在校期间所学理论知识和技能,设计开发俄罗斯方块,使自己熟悉应用系统的开发过程,培养独立思考能力,检验学习效果和动手能力,提高工程实践能力,为将来实际工作打下坚实的基础。2.2 可行性研究前提 基本需求:系统开发的总体任务是实现游戏的可操作性、美观性、及时性。开发过程遵循软件工程师规范,可采用结构化或面向对象分析设计方法。主要实现windows的GUI程序开发,对游戏中的图形图像进行键盘控制。游戏者可以通过上下左右键来对游戏进行操作。 主要开发目标:采用结构化设计方法,开发出一个可操作性、美观性、及时性的游戏

7、,实现windows的GUI程序开发,并通过此次软件开发过程全面提高自身的综合素质。 条件假定和限制:由于本软件目前是我的初次版本,可能还存在一些问题。如果该软件提高版本,本软件需要根据游戏者得要求进行一步的修改。 可行性研究所采用的方法和步骤:通过研究分析俄罗斯方块所具备的能力及实现的方法、确定主体结构。利用现阶段我所能达到的能力,以最简洁、最容易的办法,边开发边测试边修改,实现一个初级游戏软件。 评价尺度:由于本软件是一个初级产品,对其要求不是太苛刻,所以能够达到俄罗斯游戏的一般功能即可。2.3 可行性分析 技术可行性:开发本游戏的编程语言有多种,考虑到自身对语言的掌握程度,JAVA 语言

8、进行游戏的开发,采用JAVA GUI 编程来实现界面以及事件的控制。 经济可行性:本游戏的开发旨在完成毕业设计,不注重直接的经济效益和其后的发展方向,只在注重自身水平和能力的提高,对自身的经济要求也不高,只要有一台能运行相应JAVA 程序的电脑便可,所以不用考虑到经济问题。 社会可行性:本游戏的开发主要为了完成毕业设计,开发的主体是个人,不存在法律上的侵权行为,也不会为社会造成影响,这方面是完全可行的。3 需求分析3.1 游戏需求 俄罗斯方块游戏由28种不同状态的方块随机产生,方块定时下移,下落的时候玩家下、左、右控制键来控制方块的移动,由上控制键来控制方块的翻转,以便玩家可以得到合适的形状和

9、位置落下。如果方块落下后能完全填满一层,则这一层消去,并且给玩家加分,若是方块把所有的显示方框的窗口填满,则游戏失败。游戏功能需求如下:游戏界面需求:设计良好的游戏界面可以让玩家充分感受到游戏带来的娱乐性,游戏的背景、方块用的颜色可以根据喜好来自己设定,在一定的区域内运动和变形,落下后的障碍物可以用不同颜色显示,这样看起来会有一定的美感。游戏形状需求:用数组作为存储方块28 种状态的数据结构,即长条形、Z 字形、反Z 形、田字形、7 字形、反7 形、T 字型,各个方块要能实现它的变形,可设为顺时针或逆时针变形,一般为逆时针。键盘处理事件需求:方块下落时,可通过键盘方向键(上、下、左、右键)对该

10、方块进行向上(变形),向下(加速)、向左、向右移动。鼠标处理事件需求:通过点击菜单栏中相应的菜单项,可以实现游戏的开始、结束,方块形状的变换的显示,以及游戏帮助等功能。显示需求:当不同的方块填满一行时可以消行,剩余方块向下移动并统计分数。3.2 接口控制 本游戏通过键盘进行操作,在Windows的操作系统下,利用键盘的上、下、左、右键对方块进行移动变形,要使用键盘的接口事件。3.3 方案论证 学校现已开设的课程有C语言、C+,java,自己本身自学了Java,通过网上以及图书馆的资料,知道可以通过C,C+,VB,Delphi,Java实现俄罗斯方块游戏的设计。下面简单介绍下Java的优点:3.

11、3.1 Java的优点(1) 安全性 Java 是一种安全的网络编程语言,不支持指针类型,一切对内存的访问都必须通过对象的实例来实现。这样能够防止他人使用欺骗手段访问对象的私有成员,也能够避免在指针操作中易产生的错误。此外,Java 的安全性体现在多个层次上:在编译层,有语法检查;在解释层,有字节码校验器,可进行代码段格式测试和规则检查、访问权限和类型转换合法性检查、操作数堆栈的上溢和下溢检测、代码参数类型合法性检查等;在平台层上,通过配置策略,可设定访问资源域,无须区分本地或远程。(2) 可移植性 Java 具备有很好的移植性,这主要得益于它与平台无关的特性。同时,Java 的类库中也实现了

12、与平台无关的接口,这使得这些类库也能移植。同时,Java 编译器主要是由Java 本身来实现的,Java 的运行系统(解释器)由标准C 语言实现,因而整个Java系统都具有可移植性。(3) 多线程机制 Java 具有多线程机制,这使得应用程序能够并行地执行。它的同步机制也保证了对共享数据的共享操作,而且线程具有优先级的机制,有助于分别使用不同线程完成特定行为,也提高了交互的实时响应能力。Java 的多线程技术使网上实时交互实现很容易,从而为解决网上大数量的客户访问提供了技术基础。(4) 跨平台 通常,在Windows 下编写的程序是不能直接拿到UNIX 上运行的,因为程序的执行最终必须转换成为

13、计算机硬件的机器指令来执行,专门为某种计算机硬件和操作系统编写的程序是不能够直接放到其他类型的计算机硬件上执行的,至少要做移植工作。要想让程序能够在不同的计算机上运行,就要求程序设计语言能够跨越各种软件和硬件平台,而Java 恰恰满足了这一需求。Java 编译器能够产生一种与计算机体系结构无关的字节指令,只要安装了Java 虚拟机,Java 就可以在相应的处理机上执行。3.3.2 方案的选择 面向对象的程序设计吸取了结构化程序设计的先进思想,并把它们同几个支持用户用新方法进行程序设计的有力概念结合在一起。 所有面向对象的程序设计语言一般都包含三个概念:封装、多态性和继承性。 这种方法要求语言必

14、须具备抽象、封装、继承和多态性这几个关键要素。 面向对象的程序设计,是通过数据和代码建立分块的内存区域,以便提供对程序进行模块化的一种程序设计方法,这些模块可以被用作样板,在需要时再建立其副本。C+和Java在面向对象这方面比VB要强,所以我排除了用VB做的可能性。但是C+为了与C语言兼容,其是包含了些面向过程的成分;Java除了C+中非面向过程的部分,其程序编写过程就是设计、实现类,定义其属性、行为的过程。还有Java特有的“沙箱”机制是其安全性的保障,同时它去除了C+中易造成的错误指针,增加了自动内存管理等措施,保证了Java程序运行的可靠性。 所以经过再三比较了三种语言后,决定采用Jav

15、a语言编写俄罗斯方块。3.4 软硬件需求操作系统Windows98/me/2000/XP/2003内存容量64MB显卡要求8M声卡要求支持DirectX 8.0 声卡交互工具键盘/鼠标CPU奔腾133以上光驱8倍速以上硬盘空间400MB显示器VGA以上显示器开发及运行软件JDK1.5以上版本4 概要设计4.1 游戏设计所要遵循的规范一个良好的程序,在编写之前,必须要制定各种编写规范,以便组内各成员协调工作。当然,本游戏只是一个小程序,过多的规范制定显得没有必要,但是,也必须制定一个对于变量的命名规则,这有利于设计出一个可读性高的程序。本程序变量的命名规则为:所有变量一律使用相应的英文单词命名如果同一类中需要创建多个同一类型,功能相似的变量,变量的前缀应使用统一的英文单词,后缀为下划线“_”加数字。比如,从JButton对象创建开始按钮,可以命名为:startbutton。再如,创建多个道具按钮,可以命名为toolbutton_1,toolbutton_2等等。方法命名尽量

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号