资源简介
《C++游戏开发》笔记十二 战争迷雾的初步实现 源代码
配套博文http://blog.csdn.net/hust_xy/article/details/9475979
下载的朋友们如果觉得有帮助,请到博文支持一下雾央,好吗
有大家的支持,雾央就会有动力继续更新
代码片段和文件信息
//-----------------------------------【程序说明】----------------------------------------------
// 【MFC游戏开发】笔记十一 平滑动画 配套源代码
// VS2010环境
// 更多内容请访问雾央CSDN博客 http://blog.csdn.net/u011371356/article/category/1497651
// 雾央的新浪微博: @七十一雾央
//------------------------------------------------------------------------------------------------
// ChildView.cpp : CChildView 类的实现
//
#include “stdafx.h“
#include “GameMFC.h“
#include “ChildView.h“
#include “mmsystem.h“
#pragma comment(lib“winmm.lib“)//导入声音头文件库
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CChildView
CChildView::CChildView()
{
}
CChildView::~CChildView()
{
mciSendString(“stop bgMusic “NULL0NULL);
delete m_snow;
}
BEGIN_MESSAGE_MAP(CChildView CWnd)
ON_WM_PAINT()
ON_WM_TIMER()
ON_WM_CREATE()
ON_WM_MOUSEMOVE()
END_MESSAGE_MAP()
// CChildView 消息处理程序
BOOL CChildView::PreCreateWindow(CREATESTRUCT& cs)
{
if (!CWnd::PreCreateWindow(cs))
return FALSE;
cs.dwExstyle |= WS_EX_CLIENTEDGE;
cs.style &= ~WS_BORDER;
cs.lpszClass = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS
::LoadCursor(NULL IDC_ARROW) reinterpret_cast(COLOR_WINDOW+1) NULL);
//-----------------------------------游戏数据初始化部分-------------------------
//打开音乐文件
mciSendString(“open background.mp3 alias bgMusic “ NULL 0 NULL);
mciSendString(“play bgMusic repeat“ NULL 0 NULL);
//雪花
m_snow=new CParticle(100);
m_snow->Init();
//场景
m_scene=new CScene(“bg.png“);
return TRUE;
}
void CChildView::OnPaint()
{
static float lastTime=timeGetTime();
static float currentTime=timeGetTime();
//获取窗口DC指针
CDC *cDC=this->GetDC();
//获取窗口大小
GetClientRect(&m_client);
//创建缓冲DC
m_cacheDC.CreateCompatibleDC(NULL);
m_cacheCBitmap.CreateCompatibleBitmap(cDCm_client.Width()m_client.Height());
m_cacheDC.Selectobject(&m_cacheCBitmap);
//————————————————————开始绘制——————————————————————
//贴背景现在贴图就是贴在缓冲DC:m_cache中了
m_scene->DrawBG(m_cacheDC);
//贴雪花
m_snow->Draw(m_cacheDC);
//更新雪花
currentTime=timeGetTime();
m_snow->Update(currentTime-lastTime);
lastTime=currentTime;
//画出战争迷雾
m_scene->DrawFog(m_cacheDC);
//最后将缓冲DC内容输出到窗口DC中
cDC->BitBlt(00m_client.Width()m_client.Height()&m_cacheDC00SRCCOPY);
//————————————————————绘制结束—————————————————————
//在绘制完图后使窗口区有效
ValidateRect(&m_client);
//释放缓冲DC
m_cacheDC.DeleteDC();
//释放对象
m_cacheCBitmap.Deleteobject();
//释放窗口DC
ReleaseDC(cDC);
}
//定时器响应函数
void CChildView::OnTimer(UINT_PTR nIDEvent)
{
OnPaint();
}
int CChildView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CWnd::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: 在此添加您专用的创建代码
//创建一个10毫秒产生一次消息的定时器
SetTimer(TIMER_PAINT10NULL);
return 0;
}
//鼠标移动改变迷雾区域
void CChildView::onmousemove(UINT nFlags CPoint point)
{
m_scene->UpdateFogArea(point.xpoint.y);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 230400 2013-07-25 15:51 GameMFC\Debug\GameMFC.exe
文件 2194480 2013-07-25 15:51 GameMFC\Debug\GameMFC.ilk
文件 5409792 2013-07-25 15:51 GameMFC\Debug\GameMFC.pdb
文件 1954564 2012-03-30 19:10 GameMFC\GameMFC\background.mp3
文件 957065 2013-07-18 21:08 GameMFC\GameMFC\bg.png
文件 129 2013-07-25 14:03 GameMFC\GameMFC\black.png
文件 3238 2013-07-25 15:49 GameMFC\GameMFC\ChildView.cpp
文件 779 2013-07-25 15:49 GameMFC\GameMFC\ChildView.h
文件 31153 2013-07-25 15:49 GameMFC\GameMFC\Debug\ChildView.obj
文件 4346 2013-07-25 15:51 GameMFC\GameMFC\Debug\cl.command.1.tlog
文件 52120 2013-07-25 15:51 GameMFC\GameMFC\Debug\CL.read.1.tlog
文件 5046 2013-07-25 15:51 GameMFC\GameMFC\Debug\CL.write.1.tlog
文件 5647 2013-07-23 15:26 GameMFC\GameMFC\Debug\GameMFC.Build.CppClean.log
文件 667 2013-07-23 15:27 GameMFC\GameMFC\Debug\GameMFC.exe.em
文件 732 2013-07-25 14:47 GameMFC\GameMFC\Debug\GameMFC.exe.em
文件 381 2013-07-25 15:51 GameMFC\GameMFC\Debug\GameMFC.exe.intermediate.manifest
文件 59 2013-07-25 15:51 GameMFC\GameMFC\Debug\GameMFC.lastbuildstate
文件 2263 2013-07-25 15:51 GameMFC\GameMFC\Debug\GameMFC.log
文件 55152 2013-07-25 15:49 GameMFC\GameMFC\Debug\GameMFC.obj
文件 33685504 2013-07-25 14:47 GameMFC\GameMFC\Debug\GameMFC.pch
文件 75312 2013-07-25 15:49 GameMFC\GameMFC\Debug\GameMFC.res
文件 204 2013-07-23 15:27 GameMFC\GameMFC\Debug\GameMFC_manifest.rc
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
文件 2 2013-07-25 15:51 GameMFC\GameMFC\Debug\li
............此处省略78个文件信息
相关资源
- Learning C++ by Creating Games with UE4 无水印
- 《MFC游戏开发》笔记九 碰撞检测 怪物
- MFC游戏开发6by七十一雾央
- C++ GUI Qt 4编程第二版 经典教材适合
- 图书管理系统c++与SQL数据库+课程设计
- Scientific and Engineering C++
- VC++游戏编程基础有书签
- 钱能C++程序设计教程第二版pdf高清带
- C++并发编程实战 美威廉姆斯著 高清扫
- 源代码——MFC的WebBrowser控件 C++与ja
- C++编程风格(PDF 英汉对照 The Element
- 精通Visual C++数字图像处理典型算法及
- vc++企业员工考勤系统源码
- MFC c++ 实现简易电话簿
- 钱能C++程序设计教程第二版&高清版
- VC++图像处理程序设计
- c++ 2017_vc_redist.x64
- 数据结构-胡学钢C++描述
- visual c++ 自绘控件 菜单 MFC界面 资源
- [C++程序设计基础第5版上][周霭如林伟
- RabbitMQ client c++封装类 c++工程 (没有
- 无线通信系统仿真--C++实用模型包含源
- Hopfield神经网络解决TSP问题C++程序
-
exceptional C++ st
yle 英文版 chm pdf 和 - SUSE 12 gcc-c++ 离线安装
- c++ 用opencv比较两张人脸照片是否相似
- 数据结构第二版王红梅课后习题解析
- vc++之mfc屏幕监控系统源代码
- 《亮剑Visual C++项目开发案例导航》随
- C语言推箱子游戏有注释文档
评论
共有 条评论