directx10教程2创建一个框架和窗口.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE1 / NUMPAGES17 DirectX 10教程2:创建一个框架和窗口 原文地址: Tutorial 2: Creating a Framework and Window。 在开始DirectX 10编程之前,我推荐你创建一个简单的框架,这个框架用于处理基本的窗体功能,并可以非常容易地进行扩展。因为本教程的目的是为了演示DirectX 10的各项功能,因此我会将框架的代码尽量精简。 框架 框架包含4个项目。它有一个WinMain方法处理程序的入口点,有一个system类封装了整个应用程序,并可以从WinMain方法中调用,在system类中我们还使用了一个input类处理用户输入,一个graphics类处理DirectX图形代码。框架结构如下图所示: 下面我们看一下在main.cpp文件中的WinMain方法。 WinMain //////////////////////////////////////////////////////////////////////////////// // Filename: main.cpp //////////////////////////////////////////////////////////////////////////////// #include systemclass.h int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR pScmdline, int iCmdshow) { SystemClass* System; bool result; // 创建system对象。 System = new SystemClass; if(!System) { return 0; } //初始化并运行system对象。 result = System-Initialize(); if(result) { System-Run(); } // 关闭并释放system对象。 System-Shutdown(); delete System; System = 0; return 0; } WinMain方法相当简单。我们创建了system对象并进行初始化,如果初始化成功则调用system类的Run方法。Run方法运行自己的循环过程并执行所有的程序代码。当Run方法完成后,关闭system对象并进行清除。这样我们就简化了程序结构,将整个程序封装在了system类中。下面看一下system类的头文件。 Systemclass.h //////////////////////////////////////////////////////////////////////////////// // Filename: systemclass.h //////////////////////////////////////////////////////////////////////////////// #ifndef _SYSTEMCLASS_H_ #define _SYSTEMCLASS_H_ 我们定义了WIN32_LEAN_AND_MEAN,这样就可以通过排除某些不常用的API减小Win32头文件,可以加速程序生成过程。 /////////////////////////////// // PRE-PROCESSING DIRECTIVES // /////////////////////////////// #define WIN32_LEAN_AND_MEAN 需要包含Windows.h头文件,这样我们就可以调用方法创建/销毁窗口,并可以使用其他有用的win32方法。 ////////////// // INCLUDES // ////////////// #include windows.h 我们还包含了框架中另两个类的头文件,这样我们就可以在system类中使用它们。 /////////////////////// // MY CLASS INCLUDES // /////////////////////// #include inputclass.h #include graphicsclass.h 类的定义很简单。有Initialize,Shutdown和Run方法,它们可以被定义在这个类中的WinMain调用。还有一些私有方法可以在这个方法中被调用。还包含了一个MessageHandler方法用于处理来自于windows系统的消息。最后有一些私有变量m_Input和m_Graphics指向处理输入和图形的两个对象。

文档评论(0)

lm028102 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档