下载此文档

C++实训报告——飞机大战.doc


文档分类:汽车/机械/制造 | 页数:约30页 举报非法文档有奖
1/30
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/30 下载此文档
文档列表 文档介绍
软件开发生产
实****报告
姓名
XXX
学号
XXXXXX
班级
XXXX
项目名称
飞机大战游戏
实****地点
XXX
实****时间
XXX
实****成绩
指导教师签字
信息科学与工程学院
2014 年 10 月 6 日

软件开发生产实****报告
实****目的
,理解软件企业对于程序员的基本素质和技术能力要求。
++及Window程序设计的基本技术,能够运用MFC技术及其开发环境进行小型项目的开发。
,提高其口头和书面的沟通能力。
、新技术方法,培养良好的分析问题和解决问题的能力
,使学生建立正确的编程理念,养成规范的编程****惯。
2. 实****计划
C++语言知识复****尤其是指针的安全和类型转换继承的使用、多态的使用。
项目技术学****Windows窗体消息机制、透明绘图、游戏对象的面向对象分析和设计、API使用,参考相应的书籍详尽的学****br/> Windows API编程基础练****实现简单的透明贴图,即把战机图片贴到屏幕上。
读懂老师给的游戏项目技术架构设计、游戏对象的面向对象分析和设计、UML建模,同时把其余的图片包括敌机、子弹、爆炸效果登都贴到屏幕上。
项目编码、测试(包括讲师演练)、完成基本功能,主要实现战机的控制移动、敌机的随机出现并移动和敌机发射子弹等。
项目迭代,完成扩展功能,把本项目的功能(尤其是人工智能部分)实现。
全部代码测试并改进,尽可能好的完善项目。

技术准备
提高程序编写能力,提高程序调试能力,资料检索、阅读能力,强大的自学能力,加深对面向对象程序设计的理解。具体说来,需要掌握指针的安全和类型转换,继承和组合的区别、继承的使用,多态的使用,GDI的应用以及UML建模,了解游戏编程架构、Win32 API编程。再具体来说:

绘制透明位图的关键就是创建一个“掩码”位图(mask bitmap),这个“掩码”位图是一个单色位图,它是位图中图像的一个单色剪影。
在详细介绍实现过程之前先介绍下所使用的画图函数以及函数参数所代表的功能;整个绘制过程需要使用到BitBlt()函数。整个功能的实现过程如下:
(1) 创建一张大小与需要绘制图像相同的位图作为“掩码”位图;
(2) 将新创建的“掩码”位图存储至掩码位图的设备描述表中;
(3) 把位图设备描述表的背景设置成“透明色”,不需要显示的颜色;
(4) 复制粘贴位图到“掩码”位图的设备描述表中,这个时候“掩码”位图设备描述表中存放的位图与位图设备描述表中的位图一样;
(5) 把需要透明绘制的位图与对话框绘图相应区域的背景进行逻辑异或操作绘制到对话框上;
(6) 把“掩码”位图与这个时候对话框相应区域的背景进行逻辑与的操作;
(7) 重复步骤5的操作,把需要透明绘制的位图与对话框绘图相应区域的背景进行逻辑异或操作绘制到对话框上;
(8) 最后把系统的画笔还给系统,删除使用过的GDIObject,释放非空的指针,最后把新建的设备描述表也删除。
BOOL CGameObject::LoadImage(CImageList& imgList,UINT bmpID,
COLORREF crMask,int cx,int cy,int nInitial)
{
CBitmap bmp;
if(!(bmpID))
return FALSE;
if(!(cx, cy, ILC_COLOR24|ILC_MASK, nInitial, 0))
return FALSE;
(&bmp, crMask);
return TRUE;
}
CObList链表
在本程序中我使用了CObList链表来分别存储敌机,炸弹,导弹,爆
炸效果和掉落物品。CobList类似于一个双向链表,POSITION类型的变量
为链表的键。使用POSITION变量,既可以作为链表循环中的循环变量,
也可以作为标记某个位置的标签。我们可以通过获得某元素的
POSITION来访问它。本程序中主要用到的函数有:GetHeadPosition()——获取链表首元素的POSITION,AddTail()——向链表尾部添加新的元素,GetNext( POSITION& rPosition )——返回当前rPosition指向的元素,并使rPositi

C++实训报告——飞机大战 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数30
  • 收藏数0 收藏
  • 顶次数0
  • 上传人653072647
  • 文件大小367 KB
  • 时间2017-09-21