APP下载

空战游戏设计实例

2016-05-18杨卫红

电脑知识与技术 2016年9期
关键词:面向对象

杨卫红

摘要:就面向对象的程序设计而言,基类的设计至关重要,在游戏软件的开发中,“精灵”的设计是关键的步骤。首先,可以创建精灵的基类,再通过继承得到子类,如战机类、子弹类、爆炸效果类等。该文意在通过游戏的开发过程,阐述面向对象的设计理念。

关键词:面向对象;基类;派生

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)09-0138-04

An Design Instance of Air Combat Game

YANG Wei-hong

(Dongguan Science and Technology School, Dongguan 523460, China)

Abstract: In the case of object-oriented programming, the design of the base class is very important. As we develop a game software,the design of the sprite is a key step. First, we may create a base class of sprite,then we get the derived class by inheritance, for example: fighter class, bullet class, explosion effect class etc. The intention of writing this article is to elaborate the design conception of object-oriented via the game development process.

Key words: game; class; inheritance

1 设计目标

1)利用Visual Studio 2010创建一个基于VC++的MFC单文档应用程序SkyWar,程序运行效果如图1所示。

2)游戏背景及精灵的移动平顺无闪烁,爆炸的动画效果逼真。

3)游戏中的“我方战机”可跟随鼠标移动,当按下鼠标左键时,可向敌机射击。

4)击中目标或双方战机发生碰撞时,可显示爆炸的动画效果。

5)游戏运行环境:Windows XP/ Windows 2000 /Windows 7。

6)分辨率设置:1600×900像素。

2 设计思路

精灵是显示在背景上层的图像,也被称为游戏对象,通常,精灵表示游戏中所有运动的部分,精灵可以包括:自己人、敌人、子弹等。精灵的状态是根据图片、位置、色彩等变化的,因此,精灵需要保存各种信息,如:即时位置、即时速度、即时方向、可见性、帧、动画等。伴随着精灵的出现,将有一帧或多帧的动画被显示出来。当精灵需要出现时,游戏对象将需要一个视觉上真实的动画存在。

本文将呈现如何基于Visual Studio 2010,利用VC++编程开发一个简单的空战游戏的过程。要求游戏能显示“我方战机”、“敌机”、“子弹”、“爆炸效果”等精灵,并能进行简单的空战游戏。我们将通过设计一个精灵的基类(原型类),然后派生子类,创建相应的对象,从而实现在背景上显示游戏的精灵,该游戏中各种类的关系如图2所示。

其中,CFlyObj为基类,由CFlyObj类派生出我方战机类CUpPlane,敌机类 CDnPlane,子弹类CBullet,和爆炸类CExplosion等。

猜你喜欢

面向对象
面向对象方法在水蓄冷PLC编程中应用分析
基于python的面向对象传感器库类抽象方法
面向对象的计算机网络设计软件系统的开发
面向对象的数据交换协议研究与应用
面向对象Web开发编程语言的的评估方法
基于面向对象的Office评测系统的分析
峰丛洼地农作物面向对象信息提取规则集
基于E-cognition的面向对象的高分辨率遥感图像分类研究
基于面向对象的车辆管理软件的研制与开发
面向对象的SoS体系结构建模方法及应用