经典俄罗斯方块游戏设计与实现论文.docx

上传人:b****6 文档编号:7880758 上传时间:2023-01-26 格式:DOCX 页数:37 大小:131.59KB
下载 相关 举报
经典俄罗斯方块游戏设计与实现论文.docx_第1页
第1页 / 共37页
经典俄罗斯方块游戏设计与实现论文.docx_第2页
第2页 / 共37页
经典俄罗斯方块游戏设计与实现论文.docx_第3页
第3页 / 共37页
经典俄罗斯方块游戏设计与实现论文.docx_第4页
第4页 / 共37页
经典俄罗斯方块游戏设计与实现论文.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

经典俄罗斯方块游戏设计与实现论文.docx

《经典俄罗斯方块游戏设计与实现论文.docx》由会员分享,可在线阅读,更多相关《经典俄罗斯方块游戏设计与实现论文.docx(37页珍藏版)》请在冰豆网上搜索。

经典俄罗斯方块游戏设计与实现论文.docx

经典俄罗斯方块游戏设计与实现论文

经典俄罗斯方块游戏设计与实现论文

毕业设计说明书

经典俄罗斯方块游戏设计与实现

学生姓名:

学号:

学院:

系名:

专业:

指导教师:

2013年5月

中北大学信息商务学院2013届毕业设计说明书

经典俄罗斯方块游戏设计与实现

摘要

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

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

论文描述了游戏的历史,开发此游戏的环境,游戏开发的意义。

遵循软件工程的知识,从软件问题定义开始,接着进行可行性研究、需求分析、概要设计、详细设计,最后对软件进行了测试,整个开发过程贯穿软件工程的知识体系。

此次设计在Linux下,以C++为开发语言,在Qt开发平台上进行游戏的设计与实现,所以本次课题设计是以当今人们娱乐实际需求为基础,很有实用价值和现实意义。

关键词:

游戏开发、Qt、控制、C++、数组存储、键盘控制

中北大学信息商务学院2013届毕业设计说明书

TetrisGameDesignandImplementation

Abstract

Tetrisisallagesgame,itconsistsoffoursquareblocksofcolor,andthenstoredinanarrayoffourelements,thecomputerrandomlygeneratedboxoftheseventypes,accordingtothecomputerclockcontrolitnon-stoptoproduceatacertaintime,accordingtothefourdirectionsofthekeyboardkeystocontrolflip,left,rightanddownoperation(controlkeybythekeyboard'sarrowkeys,eventprocessing).Theprogramthenbasedonthesesevenboxstackedintoavarietyofdifferentmodels.

Thepaperdescribesthehistoryofthegamedevelopmentenvironmentforthisgame,thesignificanceofthegamedevelopment.Followtheknowledgeofsoftwareengineering,startfromthedefinitionofasoftwareproblem,andthenconductafeasibilitystudy,requirementsanalysis,preliminarydesign,detaileddesign,andfinallytestedthesoftwarethroughoutthedevelopmentprocessthroughoutthesoftwareengineeringbodyofknowledge.

ThedesignunderLinuxinC++DesignandImplementationofthegameontheQtdevelopmentplatformforthedevelopmentoflanguage,thesubjectofdesignisbasedontheactualneedsoftoday'speopleentertainment,greatpracticalvalueandpracticalsignificance.

Keyword:

Gamedevelopment,Qt,Control,C++,Arrayisstored,Keyboardcontrol

中北大学信息商务学院2013届毕业设计说明书

1绪论...............................................................11.1课题研究的目的及意义.............................................11.2电子游戏发展状况.................................................11.2.1电子游戏及其分类...............................................21.2.2电子游戏发展现状...............................................2

1.3可行性研究.......................................................31.3.1设计目的.......................................................41.3.2软件问题定义...................................................41.3.3可行性分析.....................................................4

........................................52Qt概述及Linux操作系统简介

2.1Qt简介..........................................................52.2Qt功能及优点....................................................52.3Linux操作系统简介...............................................53.俄罗斯方块游戏功能图...............................................7

...................73.1游戏运行流程图................................

3.2方块下落得分流程图...............................................83.3游戏系统流程结构设计.............................................94游戏主要功能选项的实现与检验......................................104.1主要功能的验证..................................................104.2游戏快捷键简简介................................................114.3.问题检测,运行程序..............................................114.4.加载成功,观察效果..............................................134.5结论............................................................16附录1..............................................................18附录2..............................................................236总结..............................................................38参考文献............................................................39致谢...............................................................40

第I页共I页

中北大学信息商务学院2013届毕业设计说明书1绪论

1.1课题研究的目的及意义

俄罗斯方块是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。

它看似简单但却变化无穷,令人上瘾。

相信大多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时代。

我国的用户都是通过红白机了解、喜欢上它的。

现在又重新掀起这股让人沉迷的俄罗斯方块风潮,它的规则简单,容易上手,且游戏过程变化无穷,使用户既能感受到游戏中的乐趣,也给用户提供了一个展现自己高超技艺的场所。

俄罗斯方块是个老幼皆宜的小游戏,在游戏设计界就好比高深武功的入门起手式。

无数人进入游戏编程的世界都是从编写俄罗斯方块游戏开始的,因为这

[1]既是一个检验RAD开发工具的好方法,也是检验一个人对开发语言、环境和基本数据结构知识熟练程度的便捷途径。

这次练习的是在Linux平台上生成俄罗斯方块游戏。

1.2电子游戏发展状况

游戏是人们活动中一项非常重要的内容,有人认为如果哪一天人类对所有的游戏都失去兴趣,恐怕世界的末日就要到了。

电脑对游戏的贡献有目共睹,现在摸过电脑的人很少有没玩过电脑游戏的,喜欢游戏的人也很少有不玩电脑的。

俄罗斯方块游戏是一款风靡全球的电视游戏机和掌上游戏机游戏,它曾经造成的轰动与造成的经济价值可以说是游戏史上的一件大事。

它看似简单但却变化无穷,令人上瘾。

相信大多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时代。

究其历史,俄罗斯方块最早还是出现在PC机上,而我国的用户都是通过红白机了解、喜欢上它的。

对一般用户来说,它的规则简单,容易上手,且游戏过程变化无穷,而在"联众俄罗斯方块"中,更有一些联众网络游戏所独有的魅力――有单机作战与两人在线对战两种模式,用户可任选一种进行游戏。

网络模式还增加了积分制,使用户既能感受到游戏中的乐趣,也给用户提供了一个展现自己高超技艺的场所。

俄罗斯方块游戏可以说是随计算机的发展而发展,并不断推陈出新演变出各种类似游戏,深受广大玩家喜爱。

这个游戏有的简单,有的复杂,但其根本原理是一样的都是对运动的方块进行组合,来训练玩家的反应能力。

谈到游戏软件,大多数人都认为其神妙莫测,高不可及。

而一般游戏软件也

第1页共40页

中北大学信息商务学院2013届毕业设计说明书确实具有很高的技术难度,随着开发工具及软件开发方法学的不断发展,动手开发游戏也不是十分困难的。

老拉方块游戏是一种古老而又有趣的游戏,游戏软件不计其数,网上就有好多关于实现的复杂算法和设计,其难度让一般初学者望而却步。

本文利用数组作为方块的数据结构,提出一种用pascal语言实现的简易方法,对初学者可仿此开发类似游戏,并了解游戏软件的设计与开发过程。

1.2.1电子游戏及其分类

电子游戏,也就是运行在家用电脑、家用电子游戏机或是掌中宝游戏机及街机上的电子游戏程序。

电子游戏是一种结合剧情故事、美术、音乐、动画、程序等技术于一身的互动型娱乐软件,涉及到多个行业,从电子游戏的分类来看,有着多种分类方式。

传统的游戏分类是按照游戏类型,将其分为即时战略游戏、第一人称射击游戏、角色扮演游戏、策略型游戏等类别。

根据游戏运行平台的不同,可将电子游戏分为游戏机游戏、单机版PC游戏、互动电视游戏、在线游戏和手机游戏。

此外,韩国政府将电子游戏业分为家用游戏机游戏、单机版PC游戏、网络游戏和街机游戏四大类。

考虑到中韩游戏业比较接近,论文采用韩国的分类标准。

“网络游戏”也就是人们一般所指的“在线游戏”,是指通过互联网进行的电脑游戏,通过人与人之间的互动达到交流、娱乐和休闲的目的。

在互联网(局域网)技术出现之前,电子游戏都可以归于单机版游戏,即“人机对战”游戏,或最多是双人对战游戏。

而随着互联网技术的出现,通过连接游戏服务器,上百、上千、乃至上万的游戏玩家同时连线娱乐成为了现实,这就大大增加了游戏的互动性、真实性,丰富了电子游戏的内涵。

从网络游戏的分类来看,目前业界还没有一个比较统一规范的分类。

随着计算机设备和网络技术的发展,电子游戏在全球得到了迅猛的发展,取得了巨大的成功,已成为当今世界上不可缺少的精神粮食。

1.2.2电子游戏发展现状

通过研究分析俄罗斯方块所具备的能力及实现的方法、确定主体结构。

利用现阶段我所能达到的能力,以最简洁、最容易的办法,边开发边测试边修改,实现一个初级游戏软件。

评价尺度:

由于本软件是一个初级产品,对其要求不是太苛刻,所以能够达到俄罗斯游戏的一般功能即可。

电子游戏是最初产生于美国,1971年,一个还在MIT就读的学生设计了世界上第一个业务用游戏机,这个街机游戏的名字叫《电脑空间》。

可以说时至今日,电子游戏仍然是外国的天下。

第2页共40页

中北大学信息商务学院2013届毕业设计说明书美国至今仍是世界第一大游戏市场,它遵循的是以发行商为主的产业开发链模式,根据美国市场调查公司NPDGroup调查统计,美国2004年游戏总销售金额(包括家用、掌上型主机及软件)为99亿美元,占了全球游戏市场的45%。

其中游戏软件销售的具体数字是:

视频游戏软件的销售额达52亿美元(1.6亿套),PC游戏软件销售额达11亿美元(4500万套),掌机游戏销售额达10亿美元(4230万套)。

2004年一共大约有2.48亿套游戏售出。

据估计,美国每个家庭平均购买过2部游戏。

日本近20年来疯狂赚取电子游戏的钱。

从上世纪60年代初的街机,到六七十年代之间的家用游戏机,再到八九十年代的掌上游戏机,日本经过30多年的耕耘,终于把电子游戏这棵“摇钱树”,培育成第一时尚娱乐产业,垄断全球业界长达10余年。

对于日本来说,电玩业已是国家经济的重要支柱之一,在GDP中占有1/5的举足轻重地位。

日本游戏业在最辉煌的1998年,曾经占领全球电子游戏市场硬件90%以上,软件50,以上。

韩国号称世界上网络游戏产业最发达国家之一。

迄今为止,国内网络游戏市场有超过60%的产品来自韩国游戏软件开发商,韩国网络游戏使国内很多游戏运营公司在游戏营销市场或股票资本市场上获得了巨大的成功。

韩国游戏市场的发展不是偶然,韩国政府不仅给游戏产业以正确的定位和引导,更是将其和本国经济发展紧密地联系到一起,做了很多市场培育方面的工作。

韩国政府认识到,靠重型工业来支撑全国经济的做法是片面的,于是将IT、娱乐产业视为新的经济增长点,开始大力扶持。

从那时起,科技含量极高而能源消耗极低的游戏制作及相关产业担负起了“富国兴邦”的重担。

由文化观光部出面组建韩国游戏支援中心,向韩国游戏产业提供从资金到技术上的多方面支援;成立游戏投资联盟,政府每年向游戏产业投入的资金多达,,,亿韩元,并为游戏企业提供长期的低息贷款;设立信息化基金和文化产业基金,为游戏产业服务;对指定的风险企业实行各种税制优惠政策,减少甚至免除游戏企业的税务负担;建设游戏产业基地以扶持中小游戏企业的发展;对从事游戏产业的高科技人才免除两年的兵役。

在韩国,从制作到运营,一个网络游戏公司起步门槛较低,主要得益于政府实行的援助计划。

此外,在有利的政策形势下,韩国出现了众多的游戏院校,一些原本不涉足此领域的大学也开设了游戏相关专业课程,以大力培养游戏专业人才,从而为游戏生产提供了基础保障。

1.3可行性研究

第3页共40页

中北大学信息商务学院2013届毕业设计说明书1.3.1设计目的

通过本游戏的设计,综合自己在杰普软件科技有限公司实训期间所学的理论知识,设计开发俄罗斯方块游戏,使自己熟悉应用系统的开发过程,培养独立思考能力,检验学习效果和动手能力,初步掌握软件工程的系统理论,初步掌握Qt这种设计模式,进一步巩固和加强自身对Qt编程基础知识的理解,提高自己的编程水平,从而达到理论与实践相结合的目的。

1.3.2软件问题定义

本游戏开发的总体任务是实现游戏的可操作性,以及界面的美观性。

整个开

发过程遵循软件工程规范,采用C++编程来实现界面以及事件的控制,用户根据键盘的四个方向键控制翻转、向左、向右和向下操作,通过菜单栏中的相应菜单选项实现游戏的开始、结束、变换方块、积分以及等级的功能。

目标:

通过本游戏的开发,主要实现游戏的可操作性以及美观性,同时使自己对C++语言的了解更进一层,为将来的实际工作打下坚实的基础。

条件、假定和限制:

由于知识以及能力的限制,本游戏所实现的功能不够强大,可对本游戏进行改善,从而增强游戏的功能。

1.3.3可行性分析

(1)技术可行性:

开发本游戏的编程语言有多种,考虑到自身对语言的掌握程度,选择C++语言进行游戏的开发,采用C++编程来实现界面以及事件的控制。

(2)经济可行性:

本游戏的开发旨在完成毕业设计,只在注重自身水平和能力的提高,对自身的经济要求也不高,所以不用考虑到经济问题。

(3)社会可行性:

本游戏的开发主要为了完成毕业设计,开发的主体是个人,不存在法律上的侵权行为,也不会为社会造成影响,这方面是完全可行的。

第4页共40页

中北大学信息商务学院2013届毕业设计说明书2Qt概述及Linux操作系统简介

2.1Qt简介

Qt是一个跨平台的C++图形用户界面库,由挪威TrollTech公司出品,目前包括Qt,基于Framebuffer的QtEmbedded,快速开发工具QtDesigner,国际化工具QtLinguist等部分Qt支持所有Unix系统,当然也包括Linux,还支持WinNT/Win2k,Win95/98平台。

2.2Qt功能及优点

(1)优良的跨平台特性:

Qt支持下列操作系统:

MicrosoftWindows95/98,MicrosoftWindowsNT,Linux,Solaris,SunOS,HP-UX,DigitalUNIX(OSF/1,Tru64),Irix,FreeBSD,BSD/OS,SCO,AIX,OS390,QNX等等。

(2)面向对象

Qt的良好封装机制使得Qt的模块化程度非常高,可重用性较好,对于用户开发来说是非常方便的。

Qt提供了一种称为signals/slots的安全类型来替代callback,这使得各个元件之间的协同工作变得十分简单。

(3)丰富的API

Qt包括多达250个以上的C++类,还替供基于模板的collections,serialization,file,I/Odevice,directorymanagement,date/time类。

甚至还包括正则表达式的处理功能。

(4)支持2D/3D图形渲染,支持OpenGL

(5)大量的开发文档

(6)XML支持

2.3Linux操作系统简介

Linux操作系统是UNIX操作系统的一种克隆系统。

它诞生于1991年的10月5日。

由于Linux是开源和免费的,因此得到了广大计算机爱好者的全力支持,现已成为今天世界上使用最多的一种UNIX类操作系统。

其具有的特点有:

(1)开放性:

指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。

(2)多用户:

是指系统资源可以被不同用户使用,每个用户对自己的资源

第5页共40页

中北大学信息商务学院2013届毕业设计说明书(例如:

文件、设备)有特定的权限,互不影响。

(3)多任务:

它是指计算机同时执行多个程序,而且各个程序的运行互相独立。

(4)良好的用户界面:

Linux向用户提供了两种界面,用户界面和系统调用。

Linux还为用户提供了图形用户界面,它利用鼠标、菜单、窗口、滚动条等设施,给用户呈现一个直观、易操作、交互性强的友好图形化界面。

(5)设备独立性:

是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以像使用文件一样,操纵、使用这些设备,而不必知道它们的具体存在形式。

Linux是具有设备独立性的操作系统,它的内核具有高度适应能力,提供了丰富的网络功能,完善的内置网络是Linux一大特点。

(6)安全性:

Linux采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。

(7)良好的可移植性:

是指将操作系统从一个平台转移到另一个平台,它仍然能按其自身的方式运行的能力。

Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。

第6页共40页

中北大学信息商务学院2013届毕业设计说明书3.俄罗斯方块游戏功能图

表1俄罗斯方块功能列表

主题界面设计游戏排列界面下一方块显示等级得分消除行数开始、退出、暂停得分规则设置下滑方向控制变向控制得分记录3.1游戏运行流程图

俄罗斯方块游戏

开始

通过方向键来调整方块下落

姿态

调整过后的俄罗斯方块落下

方块占满窗口

NO

是否游戏结束

YES

退出游戏

第7页共40页

中北大学信息商务学院2013届毕业设计说明书

3.2方块下落得分流程图

方块下落

YES

是否更改方块姿态

NO

YES

是否暂停,Pause)

NO

方块落下

SCORE增加

是否消除行数n

YES

LEVEL增加LINESREMOVED增加n

第8页共40页

中北大学信息商务学院2013届毕业设计说明书

3.3游戏系统流程结构设计

图形工厂类暂停、退出事件生产

显示面板

处理按键事件

显示方块图形类

处理逻辑

这个是游戏运行过程中产生方块图形和事件处理之间的关系图。

方块图形“工厂”

“生产”

图形

图形

调整方块姿态

方块落下

第9页共40页

中北大学信息商务学院2013届毕业设计说明书4游戏主要功能选项的实现与检验

4.1主要功能的验证

(1)计分功能(SCORE)

计分功能是用于统计玩俄罗斯方块游戏人员的得分数:

自由下落增加1分

score+=dropHeight+1;

每消去n行,多增加10n

score+=10*numFullLines;

(2)暂停功能(PAUSE)

当按下PAUSE键时,游戏停在当前页,当再次点击PAUSE时,游戏接着暂停之前的页面进行。

quitButton->setFocusPolicy(Qt:

:

NoFocus);

pauseButton=newQPushButton(tr("&Pause"

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1