VC++电脑游戏飞机大战的开发与设计(含源文件) 联系客服

发布时间 : 星期日 文章VC++电脑游戏飞机大战的开发与设计(含源文件)更新完毕开始阅读8e11ddefaf45b307e971974d

学位论文

初始化 ●分配内存 ●装载文件 ●构建表格退出?主事件循环调用窗口事件并初始化计时处理窗口事件清除 ●再分配 ●关闭文件获取玩家信息键盘循环返回操作系统主逻辑 ●人工智能 ●碰撞检测 ●物理系统时间同步锁定为30帧/秒后备画面内存●●●●○●●●●复制图像用以显示等待将下一帧画面渲染到后备缓存●●●●○●●●●

图2-1 游戏基本流程图

2.2游戏系统元素阐述

游戏元素是指各类游戏的基本构成要素,该项目主要是侧重射击类游戏,那么其中主要包括4中元素:

(1)游戏界面:人物造型、战斗场地、动画效果等,当玩家在进行游戏时,界面的效果,风格将会在第一时间告诉给玩家,这是游戏的大致轮廓,其中主要包括以下2点:图形技术:2D和3D图形技术;游戏视角:第一人称视角,第三人称视角,俯视角。

(2)游戏创意:游戏的创作意义,新奇,惊人,震撼,实效,有较突出的独立性。

(3)可玩性:有较强的可玩性,情绪 风格 精神这三个 方面 特征 。可玩性是玩家和乐趣之间的沟通桥梁,,不仅体现在单机玩家和电脑对抗中,也体现在

4

学位论文

多人多角色的竞争中,良好的可玩性是游戏是否能够占领市场的作用之一。 (4)游戏声音:游戏声音常常用于渲染气氛,烘托游戏的乐趣,使得游戏不显得匮乏无力。用于给予听觉上的反馈,例如音效,背景音乐,对话等,高品质的音乐可以达到争强游戏的表现力的效果。

2.3开发环境和相关技术的概述

2.3.1 开发环境

操作系统:XP,Win7 程序语言:C++ 开发包:MFC IDE:Visual Studio 2010

2.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月首次

5

学位论文

使用。更早以前.尚在研究阶段的发展中语言曾被称为“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已经毫无疑义地成

6

学位论文

为正式国际标准。先前被临时命名为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进行了分类封装,并且为你创建了程序的一般框架。

7