windows声音应用程序开发指南_张新宇_第1章 DirectX Audio之DirectSound.ppt
文本预览下载声明
第1章 DirectX Audio之DirectSound 1.1 DirectX Audio介绍[1,2,3,4] 1.2 DirectSound介绍 [1,5,6,7,8] 1.3 DirectSound应用程序开发 [5,6,7,8,9] 1.4 本 章 小 结[1,5,6,7,8] 1.1 DirectX Audio介绍[1,2,3,4] 1.1.1 DirectX发展历程 现在从事DirectX开发的程序员恐怕对DirectX的历史并没有太多了解。也许程序员可能也并不关心其历史,因为这并不会影响程序员现在的工作。但是我仍想在这里用一点篇幅介绍一下DirectX的发展历程,让那些无论是正在进行或是准备进行DirectX开发的朋友们知道DirectX是在什么样的背景下诞生的,它经历了什么,现在正处于什么阶段,以及其它相关背景知识。 1.DirectX的诞生 众所周知,Windows 95是Microsoft在操作系统上的一个最重要的里程碑。DirectX有幸搭上了这趟列车,它是和Windows 95同时推出的,当时还不叫DirectX,而是称为Game SDK。我们可以认为Game SDK就是现在DirectX的前身。 从Game SDK的字面意思我们就能大概理解它的内容,说白了,Game SDK就是在Windows 95下运行的、提供给游戏软件开发商使用的“游戏软件开发包”(Games Software Development Kit)。 正是这种局面引起的困惑,才使Microsoft着手开发Game SDK。当时Game SDK的设计思想是: (1) Game SDK由许多速度很快、低层的库和API组成,这些库和API为游戏开发者提供最大限度的自由和对硬件的操作。 (2) Game SDK对硬件开发的支持,由原来游戏开发商转移到硬件制造商,即由对硬件最为熟悉的硬件制造商来完成对自己硬件的支持软件,并且将最先进的硬件技术为游戏开发商所知。 (3) 让游戏也成为真正的Windows应用程序,即支持多任务。你可以从一个游戏切换到同时运行的另一个应用程序,然后还可以返回该游戏。 (4) 要有能超过或者达到DOS环境下所能达到的性能。在使用Game SDK的情况下,游戏开发者不必关心游戏要运行在哪个制造商的硬件上,因为Microsoft把这些特性都封装在了硬件驱动程序和一系列API中,当然很多是由硬件制造商完成的,达到了开发时的硬件独立性。 2.DirectX的发展 DirectX的发展历程如图1-1所示。 1) ?DirectX 1.0 DirectX 1.0是Windows下第一个可以直接对硬件信息进行读取的程序接口,与早期的Game SDK相比有本质性的区别,可以令Windows下的图形处理速度与DOS媲美。 2) ?DirectX 2.0 在这一段时间内,刮起了强烈的3D加速旋风,然而当时的DirectX在这一领域还是空白的。当时市场上出现的高性能3D图形加速卡在当时的DirectX下只能发挥其性能的1/10。 3) ?DirectX 3.0 完整的Direct3D是随DirectX 3.0向公众发布的。当时的Direct3D被公布为“一个视频游戏开发平台,将成为进入视频游戏工业的驱动力”。 4) ?DirectX 5.0 从5.0版开始(没有DirectX 4.0),DirectX的多个部件按照应用目的被分为两大层次:DirectX Foundation层和DirectXMedia层。 DirectX Foundation层为开发者提供一套“低级”API函数,以便应用程序能够充分利用3D图形加速芯片和声卡的各种高级特性。 DirectXMedia层则建立在DirectX Foundation层的基础之上,提供播放动画、播放多媒体数据流和交互控制等高级服务。它也由四个部件组成:DiectShow、DirectAnimation、Direct3DRetainedMode和DirectPlay。DirectXMedia使得应用程序只需使用一套API函数就能处理多种媒体数据,而不像以前那样,声音和图像要分别使用不同软件厂商开发的API函数。 另外,DirectXMedia提供一种统一的定时
显示全部