计算机学院本科生试验报告试验课程:程序设计试验试验项目:平面.DOC

计算机学院本科生试验报告试验课程:程序设计试验试验项目:平面.DOC

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机学院本科生试验报告试验课程:程序设计试验试验项目:平面

计算机学院本科生实验报告 实验课程:程序设计实验 实验项目:平面游戏设计(陨石撞飞机) 指导教师:张金区 开课时间:2015年6月 班级: 2014实验班 华 南 师 范 大 学 计算机 学院 _程序设计实验_课实验报告 2014 年级 实验 班 实验日期 2015-7-1 姓名 何嘉浩 学号 20142101007 实验题目:陨石撞飞机 教师评定__________ 一中文摘要 二关键词 BITMAP类消息绘图函数 ②开发游戏的相关资源(如使用到的位图资源,音频资源等) ③用c++结合前期的资源编写游戏的逻辑代码。 ④对开发出来的游戏进行调试 六、陨石撞飞机游戏设计与实现 1.陨石撞飞机的设计要求 (1)有一架飞机,至少有三块陨石,形状自己绘制。 (2)当陨石碰撞了飞机时,显示提示对话框,确定后在碰撞位置重新开始游戏。 (3)飞机活动的区域不能超出窗口的边界。 (4)说明在哪里可以控制飞机移动的速度、陨石下落的速度。 (5) 当三次碰撞后显示提示对话框,游戏结束。 2.陨石撞飞机的实现过程 ①使用visual studio新建一个MFC工程命名为plane并往其中添加五个位图资源BITMAP1为飞机位图BITMAP2~4为陨石的位图BITMAP5为飞机爆炸效果的位图当中位图分别如下图图所示 (飞机位图) (陨石位图 (爆炸效果位图 ②往planeView.h的头文件里面添加代表飞机陨石的相关变量 // 特性 public: CplaneDoc* GetDocument() const; CBitmap m_plane,m_boom; int mx, my; CBitmap m_stone1, m_stone2,m_stone3; int nstone1x, nstone1y; int nstone2x, nstone2y; int nstone3x, nstone3y; int life; // 操作 public: void DrawPlane(CDC *pDC); void DrawStone1(CDC *pDC); void DrawStone2(CDC *pDC); void DrawStone3(CDC *pDC); void DrawBoom(CDC *pDC); ③在planeView.cppp文件中的构造函数过程添加对上面变量初始化的代码 CplaneView::CplaneView() { // TODO: 在此处添加构造代码 life = 3; mx = 20;//飞机位置的初始化 my = 300; m_plane.LoadBitmap(IDB_BITMAP1);//初始化位图 m_boom.LoadBitmap(IDB_BITMAP5); //陨石位置的初始化 nstone1y = 10; m_stone1.LoadBitmap(IDB_BITMAP2); nstone2x = rand()%500; // x方向随机数0~499 nstone2y = 10; m_stone2.LoadBitmap(IDB_BITMAP3); nstone3x = rand()%500; // x方向随机数0~499 nstone3y = 10; m_stone3.LoadBitmap(IDB_BITMAP4); } ④在planeView.cpp文件中添加上面的 void CplaneView::DrawPlane(CDC *pDC)//飞机绘图函数 { CDC MemDC; MemDC.CreateCompatibleDC(pDC); BITMAP bm; m_plane.GetObject(sizeof(BITMAP), bm); CBitmap MemBitmap; MemBitmap.CreateCompatibleBitmap(pDC, bm.bmWidth, bm.bmHeight); CBitmap *pOldBitmap; pOldBitmap = (CBitmap*)MemDC.SelectObject(MemBitmap); MemDC.SelectObject(m_plane); pDC-BitBlt(mx, my, bm.bmWidth, bm.bmHeight, MemDC, 0, 0, SRCCOPY); MemDC.SelectObject(pOldBitmap); } void CplaneView::DrawBoom(CDC *pDC

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档