DirectX_简介.pptVIP

  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文档。上传文档
查看更多
* 创建办公桌(IDirect3DDevice9)的特征要用下面这个结构告诉工作室(IDirect3D9) D3DPRESENT_PARAMETERS d3dpm; FillMemory(d3dpm, sizeof(D3DPRESENT_PARAMETERS), 0); ? d3dpm.Windowed = TRUE; // 使用窗口模式 d3dpm.SwapEffect = D3DSWAPEFFECT_DISCARD; d3dpm.BackBufferFormat = d3ddm.Format; * 创建办公桌(IDirect3DDevice9), 在窗口模式下我们只有一张特别的画纸(IDirect3DSurface9), 应该是个off-screen surface if (FAILED(g_pD3D-CreateDevice (D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, d3dpm, g_pD3DDevice))) { return FAIL; } * 初始化完成后,在哪里开始画画? 首先我们要求IDirect3DDevice9把Surface清干净, 这很重要, 因为我们不清楚上面有什么奇怪的图案. 然后我们开始画了BeginSecne(), 画好了一定要告诉IDirect3DDevice9, 用EndScence(). * VOID Render() { g_pD3DDevice-Clear(0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(0, 128, 0), 1.0f, 0); g_pD3DDevice-BeginScene(); ? // … g_pD3DDevice-EndScene(); g_pD3DDevice-Present(NULL, NULL, NULL, NULL); } * 相比GDI ? 寄存器切换,主表面和离屏表面由硬件完成显示的切换,非常快! 而GDI只知道 BitBlt ,需要大量拷贝内存,慢,特别慢。 * 游戏编程技术 DirectX 简介 * DirectX DirectX是由微软公司建立的游戏编程接口。 由C++编程语言实现,遵守COM约定。 其影响力已渐渐超越OpenGL并被大多数PC游戏开发商所采用。 * DirectX SDK 简介 当Windows系统成为个人计算机的标准操作系统后,多任务与共通的特性让软件工程师不必再为兼容性的问题伤脑筋,但这些特性的副作用就是“慢”,使得直接存取图像、声音与硬件能力受到很大的限制,甚至让高度的声光效果游戏停留在MS-DOS阶段。 直到DirectX的前身“Game SDK”的出现,程序才可以直接存取硬件,游戏才得以在Windows平台上快速发展。 * 利用DirectX SDK开发出来的应用程序,必须在安装有“DirectX客户端”的计算机上才能正常运行。 后面的内容将介绍运用DirectX设计游戏程序的技巧,读者必须先在计算机上完成DirectX SDK的安装,可以到微软的网站“/directx”上下载最新版本。 * DirectX的特色 与硬件无关的特性 Windows的最大优点就是软件与硬件无关。软件工程师不需要考虑硬件芯片、制造商或等级,只需要针对DirectX来设计,DirectX会通过硬件驱动程序把程序转换成硬件所属的相关命令。 * 直接存取显存 目前的大部分显示卡都已经内建了8MB~32MB的显存,而DirectDraw可以直接存取这些显存,并且利用“切换页”的方式快速显示图象,实现动画,背景的卷动,而且像镂空、半透明等效果的制作将图形显示的效能发挥得淋漓尽致。 * 支持硬件加速 DirectX支持硬件的加速功能,当建立DirectX对象时,程序会自行查询可使用的硬件,查询设计师不需要担心玩家使用怎样的计算机配备,不论是显示卡、声卡或者是输入外围设备,若程序查询到可使用的硬件,则有硬件HAL(Hardware Abstraction Layer)来运行,否则则自动由软件HEL(Hardware Emulation Layer)来模拟。 关闭硬件加速,采用软件解码 开启硬件加速,采用硬件解码 * 网络联机功能 程序设计者可以使用DirectPlay轻松开发多人联机游戏,联机的方式可以是局域网、调制解调器及各种通信协议。 * “DirectX”可视为一种程序设计者与硬件间的接口。程序设计者不需要花费心思去

文档评论(0)

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

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

1亿VIP精品文档

相关文档