欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载
     

    电脑游戏飞机大战的开发与设计计算机专业.doc

    • 资源ID:2056786       资源大小:1.03MB        全文页数:72页
    • 资源格式: DOC        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    电脑游戏飞机大战的开发与设计计算机专业.doc

    II毕业设计(论文)题 目: 飞机大战游戏的设计与开发 学 院: 计算机科学学院 专业班级: 电子信息科学与技术11级1班 指导教师: 000 职称: 副教授 学生姓名: zylxl 学 号: 411090301xx II摘 要飞机游戏是一款风靡全球的电视机游戏和掌上游戏机产品,曾几何时,它创造了一个无法企及的游戏巅峰,也曾影响了一代产业链。虽然它辉煌的业绩在历史的涡轮中渐渐远去,但这款游戏每每提及,总会令人爱不释手,魂牵梦绕。这款游戏的名字叫做飞机大战,它是运行于Windows操作系统下的一款2D游戏,以C/C+为开发语言,构建于Microsoft Foundation Class Library(MFC)框架体系中,其中调用了部分的Win32API函数接口,在Visual Studio2010环境下开发的一款多媒体游戏。 随着硬件性能的不断提高,游戏的日益普及,使开发者不再需要过多的关注不同的硬件设备。本论文着眼于双缓冲绘图的运用,开发出仅用于理论研究的二维平面射击类游戏。 本文首先分析了电脑游戏的发展历史,然后分析了制作游戏的基本流程和游戏本身所要包含的几种元素以及游戏应具备的游戏层次。根据2D游戏的特点和游戏的角色,以及给用户呈现的游戏界面的特效,对2D图形技术,Windows 图形界面编程技术GDI,DirectDraw的显卡接口和DirectSound声卡接口以及MVC设计模式下的MFC框架等技术进行了比较仔细的研究。通过自定义一个游戏类CGame,封装了游戏元素的基本属性和行为,这样便于在用到游戏的行为操作是,只要轻松的产生CGame对象便可直接调用其方法,也有利于升级为双人游戏,乃至网络版时,只需要在该类中添加相应的行为便可。当我们向用户呈现游戏运行的界面时,通过Timer时钟控件,映射到相应的处理函数,使得游戏界面大约每2秒钟刷新一下界面,这样才能让一张位图背景图片具有动态效果。当使用DirectSound声卡接口时,我方和敌方相互射击所发出的声音,都是在时钟映射函数调用时处理的。 【关键词:】C/C+; VS 2010/MFC; 飞机大战游戏ABSTRACTAirplane game is a popular global TV game and handheld game products, once upon a time, it creates a game out of reach peak, have influenced a generation of industrial chain. Although it brilliant performance in the history of turbine faded away, but the game is often mentioned always miss. The game's name is , it is running on Windows operating systems, a 2 d game, with C/C + + as development language, building on the Microsoft Foundation Class Library MFC framework, which invokes the part Win32API function interface, in the Visual Studio 2010 environment using DirectX software development kit SDK to develop a multimedia game. With the constant improvement of the hardware performance, the rising popularity of the game, DirectX development kit update and perfect, make developers don't need too much attention to different hardware devices. The use of this thesis focus on DirectSound, DirectDraw, developed only due to the theoretical research of two-dimensional plane shooting game. This article first analyzes the development history of computer games, and then analyze the basic process of making game and the game itself need to include what kind of elements and the game should have level. According to the characteristics of the 2 d game and game role, and to the user interface rendering effects, the technology of 2 d graphics, the graphics interface and DirectSound DirectDraw sound card interface and MFC framework of MVC design mode to compare the careful research. Through a custom game CGame class, encapsulates the basic attribute of game elements and behavior, so easy to use in the game operation, as long as easy to produce the CGame object can be directly to call its methods, but also to when upgraded to a double game, online version, just need to add the proper behavior in the class. When we present game operation interface to the user, by the Timer clock control that is mapped to the corresponding processing function, makes the game about every 2 seconds refresh interface, in this way can we make a bitmap background picture with dynamic effect. When using DirectSound sound card interface, we and the noise made by enemy fire, are on the clock whenprocessing the mapping function call.KEY WORDS: C/C + +; VS 2010/MFC; plane war game 西安工程大学学士学位论文目 录第1章 绪论11.1 系统研究的背景及意义11.2 国内外的发展现状11.4 本文的组织结构21.5 本章小结2第2章 游戏的相关知识和系统开发平台的阐述32.1游戏基本流程概述32.2游戏系统元素阐述42.3开发环境和相关技术的概述52.3.1 开发环境52.3.2 相关技术52.4本章小结10第3章 游戏分析123.1 用户功能需求分析123.2 系统性能要求133.3可行性分析143.4本章小结14第4章 游戏设计154.1游戏整体设计154.1.1 整体结构154.1.2 游戏对战规则154.2游戏界面设计164.2.1游戏起始界面设计164.2.2游戏运行界面设计184.2.3游戏结束界面设计194.3游戏功能设计204.3.1双缓冲绘图204.3.2功能实现204.4本章小结27第5章 系统测试285.1软件测试基础理论285.1.1 软件测试定义285.1.2 软件测试基本概念285.2软件测试目的285.3软件测试方法分类295.3.1 静态测试与动态测试295.3.2 黑盒白盒与白盒测试295.3.3 单元测试、集成测试、系统测试、验证测试和确认测试305.4论坛测试305.4.1 测试用例设计要求305.5测试用例315.6测试结果325.6本章小结32第6章 工作总结33致谢34参考文献35附录136第1章 绪论1.1 系统研究的背景及意义当今社会是一个信息社会,一个知识经济的年代。自从世界上第一台计算机ENIAC于1946年问世到现在,计算机业飞速发展。随着以全球信息网络普及和全球信息共享为标志的“全球信息网络革命”的蓬勃兴起,世界已然进入在计算机信息管理领域的激烈竞争的时代,计算机,自然而然的变成了人们生活中必不可少的一部分。过去,人们只要是借助电影,电视,音乐等方式来娱乐。而今天,以游戏为代表的电子娱乐正成为主流娱乐方式。因为CPU以及显卡等设备的高速发展,为人们开发出更加炫目多彩的游戏提供了可能。时代的发展,社会的进步,科学技术正以日新月异的速度飞速的向前发展。计算机技术的发展更是迅速而且广泛。可以说,计算机已经涉及到现代绝大部分行业。目前纷繁复杂的游戏软件比比皆是,无论在线的网路游戏还是桌面游戏,二维的还是三维立体空间的,多由单机版游戏孕育而来。学习简单的单机版游戏的制作,有利于初学者了解到游戏制作的理念。目前不论是在国内还是世界范围内,游戏产业都如雨后的春笋,蓬勃发展,越来越多更具娱乐性的游戏产品被开发出来,这其中在众多的游戏开发工具中,Microsoft的Visual Studio系列被认为是当今世界最强大的游戏开发软件之一。其代表作:魔兽争霸系列、星际争霸系列、帝国时代系列等等等等,几乎所有的大作都有VS的功劳。因此掌握了VS的应用,不但是掌握了一种优秀的开发工具,对于今后参加大型团队的游戏项目开发也具有一定的帮助。本设计通过开发一个单机版的射击类游戏,有一定的娱乐性很值得一试。通过制作这样一个软件,可以加深对游戏设计思想的了解,也可以进一步熟悉编程工具的应用,更可以给我们的生活带来更多的趣味。通过该设计,我将更好的了解windows消息机制,更深的体会到利用Visual Studio/MFC开发windows程序的优越性。1.2 国内外的发展现状96,97年的国产游戏产品是单机版的游戏,在当时的市场上虽然品质和档次不如外来产品,但也占有一定的市场,例如仙剑奇侠传、三国志等系列带有鲜明中国特色与气息的游戏在市场上掀起了一波高潮。1998年联众与中国游戏中心等老牌的游戏平台的推出标志着电脑游戏在中国的开荒与生根。但是到了1999年在没有形成主流产品的情况下,政策不明朗,包括开发资金出现问题等原因国产游戏开始走下坡路。一直到了2000年,网络游戏问世并且很快流行起来我国的游戏行业才又渐渐的复苏,但是由于投入差距太大,起步晚等原因与外国游戏相对而言并没有竞争力。时至今日,网络游戏走入盛世,成为了一部分人休闲娱乐的主要行为。国内网易、腾讯、九城、完美等公司百花齐放,国产网游渐渐走入国际市场,而且基于网络的发展真正实现了网络全球化,网络游戏也是遍布全球,全球同玩一款游戏的现象比比皆是。大量海外游戏走入中国市场,电脑游戏百花纷呈,随着经济的进步,计算机科技的发展,这一现象将愈演愈烈。1.4 本文的组织结构第1章 绪论 本章主要介绍了课题的研究背景,课题研究的目的与意义,以及该项目所在领域国内外发展状况等,最后指出了本文工作内容及论文的组织结构。第2章 游戏相关知识和系统开发平台的阐述 本章主要介绍了整个游戏中的流程表述和开发所用语言以及开发平台的介绍与说明。第3章 游戏分析 本章主要分析了游戏的可行性,游戏对系统性能的要求以及用户对功能的需求。第4章 游戏设计 本章是本文比较重要的章节,总体描述了游戏规则以及游戏开发中各项功能的实现方法,游戏界面的设计,最后对整个项目的包结构和项目资源路径做了简单的剖析和介绍。第5章 系统测试 详细介绍了测试的概念,并对本项目进行测试。第6章 总结。1.5 本章小结详细介绍了电脑游戏开发的国内外现状,以及本论文主要研究的方向和论文的整体结构,从本章中能够清楚的了解本论文的整体架构,对以后的各细节描述都有清晰的认识。66第2章 游戏的相关知识和系统开发平台的阐述2.1游戏基本流程概述 一个游戏基本上是一个连续的循环,它完成一系列的逻辑操作,并在屏幕上绘制图像,具体流程如下: (1)初始化:在这一步中,游戏程序执行标准初始化操作,如内存分配、资源采集、从磁盘载入数据等等,这和其他Windows应用程序一样。 (2)进入游戏循环:在这一步中,游戏代码将进入游戏主循环,此时各种游戏动作和情节开始运行,直到当接受到用户退出游戏的命令。 (3)获取玩家的输入信息: 在这一步中,游戏玩家的输入信息被处理或缓存,以备下一步人工智能和游戏逻辑使用。 (4)执行人工智能和游戏逻辑:这部分包括了游戏代码的主体,诸如执行人工智能、物理系统和常规的游戏逻辑,其结果用于渲染下一帧图像。 (5)渲染下一帧图像: 游戏的输入和第四步中游戏人工智能和游戏逻辑执行的结果,被用来产生游戏的下一帧。这个图像通常放在不可见的缓存区内,因此玩家不会看到它逐渐被渲染的过程随后该图像被迅速拷贝到显示存储器中并显示出来。 (6)同步显示:通常由于游戏复杂程序不同,游戏在计算机上运行的速度会不一。使用定时器和等待函数确保游戏和最大帧同步,通常认为30FPS(帧/秒)是可以接受的最低速率,而大多数动作玩家将他们的图形调整到不大于60FPS。 (7)循环:返回到游戏的入口并重新执行上述全部步骤。 (8)关闭:这一步游戏结束,表示将退出主程序或游戏循环,并回到操作系统。然而,在用户进行结束之前,用户必须释放所有的资源并清理系统。 游戏基本流程简图如下: 图2-1 游戏基本流程图2.2游戏系统元素阐述游戏元素是指各类游戏的基本构成要素,该项目主要是侧重射击类游戏,那么其中主要包括4中元素: (1)游戏界面:人物造型、战斗场地、动画效果等,当玩家在进行游戏时,界面的效果,风格将会在第一时间告诉给玩家,这是游戏的大致轮廓,其中主要包括以下2点:图形技术:2D和3D图形技术;游戏视角:第一人称视角,第三人称视角,俯视角。 (2)游戏创意:游戏的创作意义,新奇,惊人,震撼,实效,有较突出的独立性。 (3)可玩性:有较强的可玩性,情绪 风格 精神这三个 方面 特征 。可玩性是玩家和乐趣之间的沟通桥梁,不仅体现在单机玩家和电脑对抗中,也体现在多人多角色的竞争中,良好的可玩性是游戏是否能够占领市场的作用之一。 (4)游戏声音:游戏声音常常用于渲染气氛,烘托游戏的乐趣,使得游戏不显得匮乏无力。用于给予听觉上的反馈,例如音效,背景音乐,对话等,高品质的音乐可以达到争强游戏的表现力的效果。 2.3开发环境和相关技术的概述2.3.1 开发环境 操作系统:XP,Win7 程序语言:C+ 开发包:MFC IDE:Visual Studio 20102.3.2 相关技术2.3.2.1 C+ 语言特点C+是在C语言的基础上开发的一种通用编程语言.应用广泛。C+支持多种编程范式 面向对象编程、泛型编程和过程化编程。最新正式标准C+14于2014年8月18日公布。其编程领域众广.常用于系统开发.引擎开发等应用领域.是至今为止最受广大受用的最强大编程语言之一.支持类:类、封装、重载等!计算机诞生初期.人们要使用计算机必须用机器语言或汇编语言编写程序。世界上第一种计算机高级语言是诞生于1954年的FORTRAN语言。之后出现了多种计算机高级语言.其中使用最广泛、影响最大的当推BASIC语言和C语言。BASIC语言是1964年由 Dartmouth 学院 John G. Kemeny 与 Thomas E. Kurtz 两位教授在FORTRAN语言的基础上简化而成的. 适用于初学者设计的小型高级语言;C语言是1972年由美国贝尔实验室的D.M.Ritchie所开发.采用结构化编程方法.遵从自顶向下的原则。2 在操作系统和系统使用程序以及需要对硬件进行操作的场合.用C语言明显优于其它高级语言.但在编写大型程序时.C语言仍面临着挑战。1983年.贝尔实验室的Bjarne Stroustrup在C语言基础上推出了C+1 。 C+进一步扩充和完善了C语言.是一种面向对象的程序设计语言。C+这个名字是Rick Mascitti于1983年中所建议的.并于1983年12月首次使用。更早以前.尚在研究阶段的发展中语言曾被称为“new C”.之后是“C with Class”3 。在计算机科学中.C+仍被称为C语言的上层结构。它最后得名于C语言中的“+”操作符(其对变量的值进行递增)。而且在共同的命名约定中.使用“+”以表示增强的程序。Stroustrup说:“这个名字象征着源自于C语言变化的自然演进”。注:C+是一个和C/C+无关的早期编程语言。Rick Mascitti在1992年被非正式地问起名字的由来.他表示这是在半开玩笑中说出的。他从没想过C+会成为这门语言的正式名字。有一个关于C+名字的笑话.当你使用后缀+时.赋值发生在加运算之后(因此.它应该是+C.而不是C+.这个笑话是说时下某些程序员还在以使用C的方式使用C+.这通常被一些权威著作认为是不正确的)。在“C with Class”阶段.研制者在C语言的基础上加进去的特征主要有:类及派生类、共有和私有成员的区分、类的构造函数和析构函数、友元、内联函数、赋值运算符的重载等。1985年公布的C+语言1.0版的内容中又添加了一些重要特征:虚函数的概念、函数和运算符的重载、引用、常量(constant)等。1989年推出的2.0版形成了更加完善的支持面向对象程序设计的C+语言.新增加的内容包括:类的保护成员、多重继承、对象的初始化与赋值的递归机制、抽象类、静态成员函数、const成员函数等。1993年的C+语言3.0版本是C+语言的进一步完善.其中最重要的新特征是模板(template).此外解决了多重继承产生的二义性问题和相应的构造函数与析构函数的处理等。1998年C+标准(ISO/IEC14882 Standard for the C+ Programming Language)得到了国际标准化组织(ISO)和美国标准化协会(ANSI)的批准.标准C+语言及其标准库更体现了C+语言设计的初衷。名字空间的概念、标准模板库(STL)中增加的标准容器类、通用算法类和字符串类型等使得C+语言更为实用。此后C+是具有国际标准的编程语言.该标准通常简称ANSI C+或ISO C+ 98标准.以后每5年视实际需要更新一次标准。后来又在2003年通过了C+标准第二版(ISO/IEC 14882:2003):这个新版本是一次技术性修订.对第一版进行了整理修订错误、减少多义性等.但没有改变语言特性。这个版本常被称为C+03。2 此后.新的标准草案叫做C+ 0x。对于C+ 0x标准草案的最终国际投票已于2011年8月10日结束.并且所有国家都投出了赞成票.C+0x已经毫无疑义地成为正式国际标准。先前被临时命名为C+0x的新标准正式定名为ISO/IEC 14882:2011.简称ISO C+ 11标准。C+ 11标准将取代现行的C+标准C+98和C+03。国际标准化组织于2011年9月1日出版发布ISO/IEC 14882:2011.名称是:Information technology - Programming languages - C+ Edition: 3。虽然.C+到目前为止.已经出现了很多年.但由于它的稳定性和强大的功能等.在系统开发.引擎开发等应用领域.是至今为止最受广大受用的最强大编程语言之一。2.3.2.2 MFC介绍 MFCMicrosoft Foundation Classes,是一个微软公司提供的类库(class libraries),以C+类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。MFC是WinAPI与C+的结合。API,即微软提供的Windows下应用程序的编程语言接口,是一种软件编程的规范,但不是一种程序开发语言本身,可以允许用户使用各种各样的第三方如我是一方,微软是一方,Borland就是第三方的编程语言来进行对Windows下应用程序的开发,使这些被开发出来的应用程序能在Windows下运行,比如VB、VC+、JAVA、Delhpi。编程语言函数本质上全部源于API,因此用它们开发出来的应用程序都能工作在Windows的消息机制和绘图里,遵守Windows作为一个操作系统的内部实现,这其实也是一种必要。微软如果不提供API,这个世上对Windows编程的工作就不会存在,微软的产品就会迅速从时尚变成垃圾。上面说到MFC是微软对API函数的专用C+封装,这种结合一方面让用户使用微软的专业C+ SDK来进行Windows下应用程序的开发变得容易,因为MFC是对API的封装,微软做了大量的工作,隐藏了好多程序开发人员在Windows下用C+ & MFC编制软件时的大量内节,如应用程序实现消息的处理、设备环境绘图,这种结合是以方便为目的的,必定要付出一定代价这是微软的一向作风,因此就造成了MFC对类封装中的一定程度的的冗余和迂回,但这是可以接受的。MFC是微软封装了的API。什么意思呢?Windows作为一个提供功能强大的应用程序接口编程的操作系统,的确方便了许多程序员,传统的win32开发(直接使用Windows的接口函数API)对于程序员来说非常的困难,因为,API函数实在太多了,而且名称很乱,从零构架一个窗口动辄就是上百行的代码。MFC是面向对象程序设计与Application framework的完美结合,它将传统的API进行了分类封装,并且为你创建了程序的一般框架。2.3.2.3 关于Visual Studio 2010 Visual Studio是微软公司推出的开发环境.是目前最流行的Windows平台应用程序开发环境。Visual Studio 2010版本于2010年4月12日上市.其集成开发环境(IDE)的界面被重新设计和组织.变得更加简单明了。Visual Studio 2010同时带来了 NET Framework 4.0、Microsoft Visual Studio 2010 CTP( Community Technology Preview-CTP).并且支持开发面向Windows 7的应用程序。除了Microsoft SQL Server.它还支持 IBM DB2和Oracle数据库。发展溯源Dev-C+灵活又小巧.C+ Builder开发效率高;Turbo C是万人迷.Visual Studio的资格老。可如今.江湖上只剩下最后一个大佬Visual Studio了.其他几位不是支持者渐少.不成气候.就是转投他人怀抱.中道衰落.让人难免生出几分遗憾。但是反过来.我们又对Visual Studio这位“江湖最后的大佬”增添了几分敬仰之情。据说这位老大又要出新的版本了.这些江湖八卦者.哪有错过的道理。要想深入的了解一个人.需要从他的童年开始。想了解Visual Studio.故事也就要从它的1.0开始。Visual Studio 可以用来创建Windows平台下的 Windows应用程序和网络应用程序.也可以用来创建网络服务、智能设备应用程序和 Office插件。1 1992年4月.微软发布了革命性的操作系统Windows 3.1.把个人计算机引进了真正的视窗时代。微软在原有C+开发工具Microsoft C/C+ 7.0的基础上.开创性地引进了MFC(Microsoft Foundation Classes)库.完善了源代码.成为Microsoft C/C+ 8.0.也就是Visual C+1.0.并于1992年发布。Visual C+ 1.0是真正意义上的Windows IDE.这也是Visual Studio的最初原型。虽然以现在的眼光来看.这个界面非常简陋和粗糙.但是它脱离了DOS界面.让用户可以在图形化的界面下进行开发.把软件开发带入了可视化(Visual)开发的时代。从此.大佬的时代开始了。重大突破1998 年.微软公司发布了 Visual Studio 6.0。所有开发语言的开发环境版本均升至 6.0。这也是 Visual Basic 最后一次发布.从下一个版本 (7.0) 开始.Microsoft Basic 进化成了一种新的面向对象的语言:Microsoft Basic. NET。由于微软公司对于 Sun 公司 Java 语言扩充导致与 Java虚拟机不兼容而 被Sun 告上法庭.微软在后续的 Visual Studio 中不再包括面向 Java 虚拟机的开发环境。2002 年.随着 .NET 口号的提出与 Windows XP / Office XP 的发布.微软发布了 Visual Studio .NET(内部版本号为 7.0)。在这个版本的 Visual Studio 中.微软剥离了 Visual FoxPro 作为一个单独的开发环境以 Visual FoxPro 7.0 单独销售.同时取消了 Visual InterDev。与此同时.微软引入了建立在 .NET 框架上(版本1.0)的托管代码机制以及一门新的语言 C# (读作 C Sharp.意为 C+)。C# 是一门建立在 C+ 和 Java 基础上的现代语言.是编写 .NET 框架的语言。.NET 的通用语言框架机制(Common Language Runtime. CLR).其目的是在同一个项目中支持不同的语言所开发的组件。所有 CLR 支持的代码都会被解释成为 CLR 可执行的机器代码然后运行。Visual Basic、Visual C+ 都被扩展为支持托管代码机制的开发环境.且Visual Basic .NET更是从 Visual Basic 脱胎换骨.彻底支持面向对象的编程机制。而Visual J+也变为 Visual J#。后者仅语法同 Java 相同.但是面向的不是 Java虚拟机.而是 .NET Framework。2003 年.微软对 Visual Studio 2002 进行了部分修订.以 Visual Studio 2003 的名义发布(内部版本号为 7.1)。Visio 作为使用统一建模语言(UML)架构应用程序框架的程序被引入.同时被引入的还包括移动设备支持和企业模版。.NET 框架也升级到了 1.1。2005 年.微软发布了 Visual Studio 2005。.NET 字眼从各种语言的名字中被抹去.但是这个版本的 Visual Studio 仍然还是面向 .NET 框架的(版本2.0)。它同时也能开发跨平台的应用程序.如开发使用微软操作系统的手机的程序等。总体来说是一个非常庞大的软件.甚至包含代码测试功能。这个版本的 Visual Studio 包含有众多版本.分别面向不同的开发角色。同时还永久提供免费的 Visual Studio Express 版本。使用Visual Studio 2005. 专业开发人员能够: 创建满足关键性要求的多层次的智能客户端、Web、移动或基于Microsoft Office的应用程序。使用改进后的可视化设计工具、编程语言和代码编辑器.享受高效率的开发环境。在统一的开发环境中.开发并调试多层次的服务器应用程序。使用集成的可视化数据库设计和报告工具.创建SQL Server 2005解决方案。使用Visual Studio SDK创建可以扩展Visual Studio IDE的工具。Microsoft为单独工作或在小型团队中的专业开发人员提供了两种选择.Visual Studio 2005 Professional Edition和用于Microsoft Office系统的Visual Studio 2005工具。每种版本都在标准版的特性上进行了扩展.包括用于远程服务程序开发和调试、SQL Server2005开发的工具.以及完整的、没有限制的开发环境。每种产品都可以单独购买或打包定购。专业开发人员喜欢自由的使用.NET Framework 2.0.它是一种稳健的、功能齐备的开发环境.支持创建扩展Visual Studio集成开发环境的工具。2.4本章小结本章主要介绍了游戏开发的基本流程和重要元素同时写明了本系统的技术构架,并简单的介绍了本项目开发所使用的语言以及平台。为以后的开发打下了坚实的基础。第3章 游戏分析3.1 用户功能需求分析由于本程序简单易操作,交互性好,对用户没什么特别要求。一般用户经过几分钟练系都可以熟悉本游戏的规则如图3-1和3-2所示。图3-1 游戏界面示例图图3-2 游戏界面示例图3.2 系统性能要求1.实时性本应用为手机游戏因此对于用户的操作必须做出立即响应,否则本游戏即为失败。2.易操作性单机手机游戏的最大特点即为易操作性,用户在不看说明的情况下也能够玩,并且在玩过几遍之后即熟悉本游戏的规则。这是本应用对于操作性的要求。3.3可行性分析1.技术可行性本游戏以C/C+语言为基础,以Visual Studio 2010(简称vs)为开发平台。通过微软提供的MFC框架实现的飞机射击游戏。C+,是在C语言的基础上发展而来,C+保留了C语言的所有优点,增加了面向对象的机制。C+面向对象编程语言具有如下4个基本特征:抽象,继承,封装,多态。MFC,微软基础类Microsoft Foundation Classes,实际上是微软提供的,用于在C+环境下编写应用程序的一个框架和引擎,VC+是Windows下开发人员使用的专业程序C+ 开发包的SDK ,MFC就是挂在它之上的一个辅助软件开发包,MFC作为与VS血肉相连的部分MFC是Win API与C+的结合,API,即微软提供的WINDOWS下应用程序的编程语言接口,是一种软件编程的规范,但不是一种程序开发语言本身,可以允许用户使用各种各样的第三方。MFC是微软对API函数的专用C+封装,这种结合一方面让用户使用微软的专业C+ SDK来进行Win下应用程序的开发变得容易,因为MFC是对API的封装,微软做了大量的工作,隐藏了好多程序开发人员在Win下用C+ & MFC编制软件时的大量内节,如应用程序实现消息的处理,设备环境绘图,这种结合使得应用程序开发人员开发更加方便了,产品的开发周期大大降低,效率提高了。 2.操作可行性分析本游戏以传统的C/S为体系结构,对用户的计算机硬件没有什么特别的要求,也不需要用户具有较高的计算机水平。只需一台安装了XP/win7等操作环境,声卡和显卡功能正常。3.4本章小结在本章,将项目对系统的需求,对玩家的需求以及项目的可行性进行了深入浅出的分析,确定本项目在技术上可行,在操作上也可行。第4章 游戏设计4.1游戏整体设计4.1.1 整体结构正方:玩家。具有自动打出的子弹,子弹打到敌机次数足够则摧毁敌机,击毁敌机越多,所得分数越高。如果与敌机发成碰撞则炸毁,结束游戏。反方:电脑本身,即敌机。敌机分为大、中、小三种。其出现的位置是随机的,随着玩家得分的上涨,出现的频率加大。不同敌机生命值不同,体形越大的敌机具有生命值越多(即被子弹打中次数更多才会坠毁)。背景:本游戏的背景设置是动态的,利用时钟控件,实现通过移动位图背景来映射飞机的前进飞行。游戏的整体结构,如图4-1所示。图4-1 游戏界面示例图4.1.2 游戏对战规则正方:游戏开始后玩家通过电脑键盘按键和自由控制飞机飞行方向,飞机会以固定的时间间隔进行射击(射击间隔为0.2S),玩家通过击毁对面飞来的飞机(即敌机)来获取分数,如果与敌机发生碰撞则炸毁,结束游戏。反方:由电脑本身进行控制,敌机会出现在靠上的随机位置(通过随机函数实现),当我方子弹击毁时会出现炸毁特效。小、中、大三款敌机出现频率由高到低,但是随着玩家分数的上升出现的频率会提高。三款飞机的生命值多少也不同,随着体积的增大生命值增多。击毁不同飞机玩家获得的分数也是按体积大小依次提升。 4.2游戏界面设计4.2.1游戏起始界面设计通过MFC的绘图功能将ps制作而成的素材以像素为坐标依次绘入界面。素材如下:项目运行后将自动进入起始界面,如图4-2所示。图4-2进入起始界面图4.2.2游戏运行界面设计 选择开始游戏(start)后自进入游戏界面,并立即开始游戏,如图4-3所示。图4-3界面运行图4.2.3游戏结束界面设计当玩家操控的飞机炸毁时进入游戏结束界面,并显示玩家所得分数,如图4-4所示。图4-4 游戏结束面图4.3游戏功能设计4.3.1双缓冲绘图双缓冲即在内存中创建一个与屏幕绘图区域一致的对象,先将图形绘制到内存中的这个对象上,再一次性将这个对象上的图形拷贝到屏幕上,这样能大大加快绘图的速度。在图形图象处理编程过程中,双缓冲是一种基本的技术。我们知道,如果窗体在响应WM_PAINT消息的时候要进行复杂的图形处理,那么窗体在重绘时由于过频的刷新而引起闪烁现象。解决这一问题的有效方法就是双缓冲技术。因为窗体在刷新时,总要有一个擦除原来图象的过程OnEraseBkgnd,它利用背景色填充窗体绘

    注意事项

    本文(电脑游戏飞机大战的开发与设计计算机专业.doc)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开