游戏开发新手入门之DIRECTX入门

游戏开发新手入门之DIRECTX入门

ID:44719776

大小:194.87 KB

页数:16页

时间:2019-10-26

游戏开发新手入门之DIRECTX入门_第1页
游戏开发新手入门之DIRECTX入门_第2页
游戏开发新手入门之DIRECTX入门_第3页
游戏开发新手入门之DIRECTX入门_第4页
游戏开发新手入门之DIRECTX入门_第5页
资源描述:

《游戏开发新手入门之DIRECTX入门》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、简介今天我们要接触到令人敬畏的DirectX。它比WindowsGDI要快好几倍,可用于不同的语言和多种平台,支持从绘制象素到高级3D图象,从播放简单声音到数字音乐,从键盘控制到反震手柄……它给你游戏编程所需的一切(有点夸张)。当然了,它是巨大的,需要好几本书才能含盖它的全部。先不要去担心我在这里所教给你之外的数不清的知识,毕竟我把你推到了起跑线上。阅读本章,你需要前几章的知识和C语言的知识,由于我们还要谈到组件对象模型(COM),它是面向对象系统的基础,你最好还要有一点儿C++的知识。没有也不太要紧,我

2、在讲到这处时会照顾你的。反正你记住,使用DirectX并不需要多少C++的知识。开始吧!☆什么是DirectX?DirectX是游戏制作者的API(ApplicationDevelopmentInterface)。它是一组允许你直接控制计算机硬件设备的软件。如果你的硬件支持DirectX,并且你用硬件加速你的程序,这就意味着一个字——快。不用担心你的硬件知识,你不会真正的接触到它们。我们是通过硬件抽象层(HAL)和硬件仿真层(HEL)来保证设备无关性和让你的程序正常运行。DirectX由很多组件构成,每一

3、个都有特定的用途。组件DirectDraw是最为重要的一个,因为所有的图形都要用到它,它是2D图形的引擎,3D图形也同样离不开它。DirectDraw是我们今天就要说的。其它的组件是:▲DirectSound:提供硬件和软件的声音混合与回放。▲DirectMusic:处理基于消息的音乐数据。它支持乐器数字接口(MIDI)并为创建交互式音乐提供创作工具。▲DirectPlay:使得通过调制解调器链接或通过网络来与应用程序相连成为可能。▲Direct3D:是一个三维图形包,它提供一个高级的保留模式(Retai

4、nedMode)接口,这使得你能够实现一个完整的三维图形系统。它还包含一个低级的即时模式(ImmediateMode)接口,使得应用程序获得对渲染管线的完全控制。▲DirectInput:为包括游戏杆、鼠标、键盘和游戏控制器在内的输入设备提供支持。它还为反馈游戏设备提供支持。▲DirectSetup:为DirectX提供了一个简单的安装过程。它简化了更新显示和音频驱动程序的过程,并且确保没有硬件或软件冲突的存在。▲AutoPlay:让你能够制作一张一旦插入驱动器就能自动安装的光盘。AutoPlay并非Di

5、rectX所独有,因为它是MicrosoftWin32API的一部分。组件对象模型(COM)是DirectX的基础,有一些技巧建立COM对象——别问我怎么做——但你知道一点点还是有好处的。我只是简单说一下,如果你有兴趣,具体的细节就自己查资料吧!可能下一节你有些困惑,但不要紧,我所说的你不用太明白,毕竟我们的目的是使用COM对象,这可比创建容易多了。☆组件对象模型(COM)COM接口是DirectX技术的基础,没有COM就没有DirectX。(不用担心,你只需要对COM技术有一个粗浅的了解就可以使用Dir

6、ectX——只要你在编写DirectX应用程序时遵循一定的步骤,甚至都可以在不了解COM的情况下使用DirectX。DirectX的大多数API都是基于COM结构的。COM为软件模块化和软件重用提供了最坚实的基础,它的最重要的概念就是接口(interface),接口是软件重用的最基本方法。更专业的说,接口是一系列操作的规范描述,即接口规范。所有的COM接口都是从Iunknown接口继承而来的,IUnknown接口是所有COM接口的根。IUnknown接口具有3个方法:·QueryInterface():此

7、方法查询新接口,并在新接口存在时返回之。·AddRef():此方法在接口或其它应用程序连编到此COM对象上时将引用计数值递加1。·Release():此方法将COM对象的引用计数递减1。当引用计数递减到0时,该COM对象自动释放。所有COM对象都具有这三个方法。虽然DirectX应用程序一般不需要考虑引用计数的问题,但引用计数确实是存在的,它已经由DirectX自动完成了。我们所要做的,就是创建DirectX对象,然后在使用完毕后调用Release方法释放引用。☆设置用DirectX创建程序,你需要有三件

8、主要的事要做。第一件事是COM对象本身,它们包含在.DLL文件里,这些.DLL文件需要在Windows里注册,这在安装DirectX软件包时已经完成了。这些对象是我们创建DirectX应用程序时用到的接口,例如IdirectDraw。但这还不够,因为在COM层上直接使用DirectX是令人沮丧的和乏味的。我们希望有更容易的办法解决它。利用静态库(.LIB文件)是个好办法,它是DirectX软件包的一部分,你可以从Microso

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。