3d游戏框架(第一个3d游戏实例)上
来源:互联网 发布:腾讯代理吃鸡会优化么 编辑:程序博客网 时间:2024/06/05 04:00
// WinMain
//
int WINAPI WinMain(HINSTANCE hinstance,
HINSTANCE prevInstance,
PSTR cmdLine,
int showCmd)
{
if(!d3d::InitD3D(hinstance,
640, 480, true, D3DDEVTYPE_HAL, &Device))
{
::MessageBox(0, "InitD3D() - FAILED", 0, 0);
return 0;
}
if(!Setup())
{
::MessageBox(0, "Setup() - FAILED", 0, 0);
return 0;
}
d3d::EnterMsgLoop( Display );
Cleanup();
Device->Release();
return 0;
}
通过上面winmain函数执行过程我们知道游戏的大概框架:
1.WinMain做为程序的入口。
2.在if的判断参数中执行了d3d::InitD3D,d3d::InitD3D功能为初始化住显示窗口和Driect3D。
3.第二个if的判断参数中执行了Setup();Setup主要完成程序的初始话(游戏中则为游戏的初始化工作,例如创建游戏对象等)
4.通过Display作为参数调用了d3d::EnterMsgLoop( Display );Display功能为完整屏幕的填充和后背表面交互,d3d::EnterMsgLoop实现了消息循环,在这里通过:
::PeekMessage获取消息
::TranslateMessage翻译为具体消息
::DispatchMessage将消息投递给操作系统
操作系统再调用窗口过程函数(回调函数)d3d::WndProc处理消息。 (这里d3d::WndProc代码定义有程序员编写,在这里实现游戏的控制机制)
5.执行Cleanup();清除应用程序。
6.执行Device->Release();释放IDriect3DDevice9对象。
//下一篇继续介绍关于窗口的创建和Driect3D的初始化
- 3d游戏框架(第一个3d游戏实例)上
- 3d游戏框架(第一个3d游戏实例)中
- 3d游戏框架(第一个3d游戏实例)下
- 3D游戏编程-第一个游戏
- Unity 3D之第一个游戏
- Unity 3D之第一个游戏
- 3D游戏引擎学习一(创建第一个项目)
- VISUALC#编写3D游戏框架示例
- 3d游戏的总体设计框架 .
- 3d游戏的总体设计框架
- 3d游戏的总体设计框架
- 3D手机游戏
- 3D魔方游戏
- 3D游戏换装
- OGRE 3D游戏
- 3D游戏引擎
- 3D游戏书
- Flash 3D游戏
- C++邻域查找
- The project cannot be built
- LR的一个输出状态信息的函数
- Banner大小之国际标准
- X3DAudio
- 3d游戏框架(第一个3d游戏实例)上
- 关于内存中栈和堆的区别[转]
- Fortran基本用法小结
- Time is going
- 读《信息检索系统导论》
- Linux下C语言 文件操作
- C++: 二维数组作函数参数
- SQL Server 2005利用分区对数据处理
- VFP连接SAP的RFC函数接口