俄罗斯方块-文献综述.doc

上传人:飞****2 文档编号:78793388 上传时间:2023-03-19 格式:DOC 页数:6 大小:135.50KB
返回 下载 相关 举报
俄罗斯方块-文献综述.doc_第1页
第1页 / 共6页
俄罗斯方块-文献综述.doc_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《俄罗斯方块-文献综述.doc》由会员分享,可在线阅读,更多相关《俄罗斯方块-文献综述.doc(6页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、毕业设计(论文)文献综述学生姓名 学 号 指导教师 专 业 软件工程 二零一二年六月文献综述一 前言俄罗斯方块游戏由莫斯科科学学院程序员Alexei Pajitnov设计,发行于1985年。他在玩过一个拼图游戏之后受到启发,从而制作了一个以Electronica 60为平台的俄罗斯方块的游戏。后来经瓦丁格拉西莫夫移植到PC上,并且在莫斯科的电脑界传播。帕基特诺夫因此开始小有名气。随后几年,俄罗斯方块开始登陆各大游戏主机。也曾因为版权问题引起过许多纠纷。但是拜亚洲盗版商人所赐,俄罗斯方块被引进到国内,如今已成为家喻户晓的著名游戏了。如今电子游戏业如此繁荣,作为电子游戏鼻祖的俄罗斯方块起到了决定性

2、的作用。如今俄罗斯方块已有多种版本,有的加了几种特殊形状,有的可以使用道具,还有连机的俄罗斯方块等等。但万变不离其宗,不管怎么变,游戏的基本规则是没有变化的。游戏玩法十分简单,如今已经成为一种公认的规则:屏幕顶部以随机顺序落下形状各异的方块,你要试图用它们拼成没有空隙的行列。坚持得时间越长,游戏速度也就变得越来越快,而游戏的吸引力就在于使你顶住碎块的进攻,支撑的时间比上一次更长。由于玩法简单,容易上手,如今仍是风靡全球,老少皆宜的一款游戏二主题1. 开发工具节介绍1.1 VC+的优点 VC+是由Microsoft公司制作,基于WINDOWS环境的一款编程软件。由于WINDOWS操作系统比起MS

3、-DOS操作系统优越了许多。作为与之相搭配的编程软件自然也是功能非常强大,其最大的特点也就是可视化。不过在提供可视化的编程方式的同时,它采用了面向对象的程序设计方法,同传统的结构化程序设计方法相比,缩短了软件开发的周期,提高了软件的开发效率,使程序员可以更好地理解和管理庞大且复杂的程序。VC+中还集成了大量的最新技术,如ActiveX,COM等技术适合开发大型工程,这是相对于VB的一个优势。它的兼容性较好,还为用户提供了极为丰富的文档和范例。关于VC的参考资料也非常多,程序开发人员可以紧紧地把握住软件开发技术发展的方向,开发出功能强大的应用程序。1.2 MFC简介MFC,微软基础类(Micro

4、soft Foundation Classes),实际上是微软提供的,用于在C+环境下编写应用程序的一个框架和引擎,VC+是WinDOS下开发人员使用的专业C+ SDK(SDK,Standard SoftWare Develop Kit,专业软件开发平台),MFC就是挂在它之上的一个辅助软件开发包,MFC作为与VC+血肉相连的部分(注意C+和VC+的区别:C+是一种程序设计语言,是一种大家都承认的软件编制的通用规范,而VC+只是一个编译器,或者说是一种编译器+源程序编辑器的IDE,WS,PlatForm,这跟Pascal和Delphi的关系一个道理,Pascal是Delphi的语言基础,Del

5、phi使用Pascal规范来进行Win下应用程序的开发和编译,却不同于Basic语言和VB的关系,Basic语言在VB开发出来被应用的年代已经成了Basic语言的新规范,VB新加的Basic语言要素,如面向对象程序设计的要素,是一种性质上的飞跃,使VB既是一个IDE,又成长成一个新的程序设计语言),MFC同BC+集成的VCL一样是一个非外挂式的软件包,类库,只不过MFC类是微软为VC+专配的. MFC是Win API与C+的结合,API,即微软提供的WinDOS下应用程序的编程语言接口,是一种软件编程的规范,但不是一种程序开发语言本身,可以允许用户使用各种各样的第三方(如我是一方,微软是一方,

6、Borland就是第三方)的编程语言来进行对WinDOS下应用程序的开发,使这些被开发出来的应用程序能在WinDOS下运行,比如VB,VC+,Java,Dehpi编程语言函数本质上全部源于API,因此用它们开发出来的应用程序都能工作在WinOS的消息机制和绘图里,遵守WinDOS作为一个操作系统的内部实现,这其实也是一种必要,微软如果不提供API,这个世上对Win编程的工作就不会存在,微软的产品就会迅速从时尚变成垃圾,上面说到MFC是微软对API函数的专用C+封装,这种结合一方面让用户使用微软的专业C+ SDK来进行Win下应用程序的开发变得容易,因为MFC是对API的封装,微软做了大量的工作

7、。 隐藏了好多程序开发人员在Win下用C+ & MFC编制软件时的大量内节,如应用程序实现消息的处理,设备环境绘图,这种结合是以方便为目的的,必定要付出一定代价(这是微软的一向作风),因此就造成了MFC对类封装中的一定程度的的冗余和迂回,但这是可以接受的。1.3 WINDOWS编程机制 WINDOWS是一个多进程的图形窗口操作系统。WINDOWS应用程序与DOS应用程序有很大的区别。DOS应用程序采用顺序执行过程,而WINDOWS是一个基于事件的消息(Message)驱动系统。消息驱动是WINDOWS应用程序的核心,消息不仅可由WINDOWS发出,它也可由应用程序本身或其它程序产生。所有的外部

8、响应(如改变窗口大小或移动、单击鼠标等),该动作就会触发一个相应的“事件”而被Windows先拦截,转换成消息后再发送到指定应用程序的消息队列。从而使程序可以处理该事件。处理完以后,再等待下一个事件的发生。2游戏设计与实现2.1 游戏总体设计 本游戏界面简洁明了,没有什么花哨的东西。菜单栏功能并不复杂,仅有游戏控制和选项设置两项。进入游戏后的窗口背景是黑色调,游戏区域是灰色调,这些都可以通过选项进行调整。游戏区域有20列,10行,这样设计是为了让方框有足够的高度,可以让玩家有充足的反应时间来处理掉落的方块。游戏开始后默认的方块是具有立体感的红色方块,其颜色和质感都是经过精心设计的。而在上方会显

9、示将要落下的方块,让玩家做好迎接挑战的心理准备,下方则显示分数。游戏的操作主要由鼠标和键盘来完成。鼠标点击开始后便可用键盘上的“上下左右”来对方块进行操作2.2 游戏窗口绘制 主窗口主要由标题栏,菜单栏和游戏区域构成。标题栏和菜单栏比较容易实现,可以直接在“IDR_MAINFRAM”弹出菜单编辑窗口中进行添加。游戏区域的实现较为困难一些。需要了解文档-视图-框架三者之间的联系,懂得一些相关方面的知识。视图View类主要用于视图的打印显示,而类中用的最多的还是OnDraw()函数,它负责真正的绘图工作。它也是和主窗口实现息息相关的一个函数。 首先要定下游戏区域的长宽。大小为15行,10列:m_i

10、Row = 15;m_iCol = 10;然后是游戏区域与游戏背景的位置。由于游戏区域上方将要显示下一个将要下落的方块,所以游戏区域左上角X,Y坐标如下定义:m_iStartX = 10; m_iStartY = 10;m_iStartX坐标定义的比较大,是为了给下一个下落方块区域腾出空间。当基本数值都定义好了,还需要使用DcEnvInitial()函数来对绘图设备环境进行初始化。首先用默认的参数,获取当前屏幕设备环境 CDC * p.WindowDC = GetDC( )。由于方块的绘制并不是在程序中实现的,而是通过外界位图的载入来实现,因此内存设备环境、内存位图、屏幕三者之间要通过语句来进

11、行关联,要将外部位图rect.bmp动态载入m_hMemRectBmp中。2.3 方块设计方块是俄罗斯方块游戏的最重要的组成部分。方块设计包括方块的实现、方块的移动、方块的旋转与方块的随机性四个部分。2.4 游戏控制设计从分析游戏的特性可以知道,定时器的产生与生效应该在游戏开始的时候,而在游戏暂停或者游戏结束时则将已经设定的定时器失效/销亡(对于暂停的情况,使它销亡,当游戏从暂停状态又进入游戏状态时候,则重新创建一个定时器并激活它的运作),所以分别在游戏的开始函数、暂停函数已经结束函数中实现定时器的激活与去激活工作。这里,先在资源编辑器菜单资源里面添加三个菜单选项,分别是游戏的“开始”、“暂停

12、”、和“结束”,然后利用ClassWizard直接在视图类对象Cskyblue_RectView中为它们添加空白的处理函数.经过定时器的设置后,这里通过利用ClassWizard跳到定时器到时候的处理函数OnTimer()去实现,当固定时间片间隔到达后,先检测当前下坠物是否已经到达了底部,不是则进行RectDown()下坠物向下移动一个单位的操作,是则到底后产生一个新的“下一个下坠物”,并代替旧的,将原先旧的“下一个下坠物”用作当前激活状态下正在使用的下坠物,并对使用后的一些状态进行检测:是否马上到达底部,使则进行销行操作三结束语随着俄罗斯方块系统的开发完成,本系统中预期的主要功能也基本实现。

13、本系统以Visual C+6.0作为开发工具,使用其提供的MFC实现。本论文阐述了俄罗斯方块系统的分析与设计的全过程,并在论文中相应的位置插入了图片、系统设计流程图以及一些编程思想代码,更加清晰的描了该系统是如何实现的。经过二个多月的设计,其功能基本符合要求,能够完成预定的开始游戏、暂停游戏、结束游戏、显示下一个产生的方块组和计算成绩等功能。通过毕业论文的撰写,我获益最大的就是能够锻炼了能多个角度的看待、处理问题,科学的整理和分析所学的专业知识,提炼成一种思想。论文的撰写,使我对此系统的开发和完善有了更科学系统的详细总结,我相信这对我日后的学习和工作将产生巨大的影响。由于毕业设计时较短,对Vi

14、sual C+中的很多知识还没有了解和掌握,在俄罗斯方块系统中有些功能还不够完善,该系统还有许多不尽如人意的地方,比如用户界面不够美观、俄罗斯方块组颜色单一等问题,这些都有进一步改善。四 参考文献:【1】 罗伟坚. Visual C+ 经典游戏程序设计.人民邮电出版社,2006【2】 张卫华,刘征,赵志刚.Visual C+ 程序设计实战训练 举一反三.人民邮电出版社,2006【3】 张海藩.软件工程.人民邮电出版社, 2005【4】 张德慧,周元哲.C+面向对象程序设计.科学出版社,2005【5】 刘长明.Visual C+实践与提高-多媒体篇.中国铁道出版社,2005【6】 宇鹏,王晓峰.

15、 Visual C+实践与提高-ActiveX篇. 中国铁道出版社,2005【7】 罗斌.Visual C+编程技巧精选500例.中国水利水电出版社,2004【8】 罗建军,崔舒宁,杨琦.大学Visusl C+程序设计案例教程.高等教育出版社,2004【9】 宛延铠.C+语言和面向对象程序设计. 清华大学出版社.1997【10】 郑阿齐,丁有和.Visual C+ 教程.机械工业出版社,2005【11】 潘爱民,王国印.VC+技术内幕.清华大学出版社,2004【12】 刘刀桂,孟繁晶.VC+ 实践与提高.中国铁路出版社, 2004【13】 Gerow Carole. The C+ Programming Language.清华大学出版社,2004【14】 Angela B.Shiflet Paul A.Nagin.c+程序设计.清华大学出版社,2004.

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com