MFC不仅仅封装了Win32API,同时还提供了一套开发模板,也就是我们通常所说的MFC开发框架。程序员在使用Win32API编程的时候需要自己写主程序框架,搭建消息响应框架,而MFC定义了这些框架的轮廓,提供了所有接口的系统默认实现方法,程序员需要完成的任务就是在系统默认的实现方法里面加入自己的实现代码,从而达到自己的目的,同时Visual C++系统集成开发环境还提供一些便捷工具辅助程序员进行编程,比如类向导ClassWizard等等[7][8]。这样程序员就不必要关注Win32API底层消息处理响应机制,提高编程速度,充分发挥Windows平台的功能。
因为MFC封装了底层Win32API,所以MFC执行效率是没有底层Win32API快,但是MFC对Win32API只是进行了浅层次的封装,所以执行效率损失非常的小,对于大多数用户编程而言,这点可以完全可以忽略。
1.2.2 GDI技术
GDI是微软开发的图形设备接口,负责与程序与底层显卡之间的交互,这样程序员就不必要关心底层图形显示设备的相关细节,实现在硬件上显示图形,提高了程序员的开发效率[9]。
有以下4个特点:
(1)不让程序员直接操纵显卡驱动,可以通过hdc设备环境上下文访问显卡;
(2)如果程序员需要进行绘图,就必须要获得相关窗口的设备环境上下文;
(3)因为各个硬件开发商已经封装了接口,程序员不需要关心底层设备的类型。
1.2.3 GDI+技术
由于GDI只能处理位图图片,不能满足用户对各种各样的图片处理的需求,微软继GDI之后又开发出了一套GDI+函数库,GDI+与GDI功能几乎一样,是GDI的增强版,对以前版本进行了大幅度优化,同时提供了许多新API,满足应用程序开发人员的需求,作为老版本的增强版,GDI+同样实现了与底层硬件的分离,使得开发人员开发效率得到大大提升[10][11]。
GDI+新增加的API如下
(1)允许程序员创建一个沿着路径颜色渐渐改变的画刷;
(2)实现将一组曲线按照特定的程序员规定的顺序连接起来;
(3)在老版本中,路径属于设备环境上下文,生命周期有限,而在新版本中,由Graphics来完成对图像的绘制,所以可以相同路径对象绘制多次路径;
(4)GDI+封装了相关矩阵函数,能够让程序员轻易实现对图片的平移、缩放、旋转,提高编程效率;
(5)实现alpha混合技术[12];
(6)正如上文提到的,新增支持jpg、png、gif等格式图片的处理。
1.2.4 开发工具及运行环境
适用的操作系统:WinXP、Win7、Win8等微软产品
开发环境: VS2010
开发语言: C++
1.3 文章内容及课题的主要贡献
本文主要介绍课题的研究背景、系统的意义和开发价值、系统设计的总体思路和相关技术等,对系统的可行性和需求进行分析,清晰的介绍了基于Win8的飞机大战游戏的设计与实现过程[13]。
玩家可以通过游戏尽情释放自己的压力,陶冶情操,欣赏优美的游戏画面,聆听悦耳的游戏音乐,娱乐身心。
身为游戏开发者的我,不仅巩固了自己在大学期间所学知识,同时学到了好多游戏方面专业知识,拓展了视野,提升了自己的编程技能,开发出一款真正的自己的游戏,也为以后在事业上的发展打下良好的基础。
论文的主要章节概括如下:
第1章是绪论,介绍课题的研究背景、开发意义、运用的相关技术及技术的介绍,同时简单介绍其应用的环境和开发语言及工具。
第2章是对飞机大战的需求分析,介绍飞机大战系统的功能,对其进行需求分析,并论述其可行性。 MFC基于Win8的飞机大战游戏的设计与实现(3):http://www.youerw.com/jisuanji/lunwen_40644.html