DirectX简介
2011年06月21日
1、DirectX是什么
DirectX(简称:DX)是微软推出的一套基于Windows系统的多媒体应用程式接口APIs函式。在开发中,DX分为两个部分,一个是运行库,通过DX编译出来的程式必须要有运行库的支持,另外一个是开发库,也就是常说的SDK,这部分是在编译DX程序中是必需的。
DirectX是一种图形应用程序接口(API),简单的说它是一个辅助软件,一个提高系统性能的加速软件,微软创建开发的。他的意思不难理解,Direct是直接的意思,X是很多东西,加在一起就是一组具有共性的东西,这个共性就是直接。微软定义它为"硬件设备无关性"。
DirectX 是微软开发的图形及媒体加速接口,只有安装了它,系统中软件才能比较直接的利用硬件加速资源(高速访问硬件),目前该软件最高版本为9.0c
在Windows操作系统的体系构架中,在内核与硬件之间有一层抽象层,专门对硬件进行屏蔽抽象,所以用户不再被允许对硬件进行直接访问。这样做以后,大大地提高了操作系统的抗破坏性和抗干扰性,但这样以来,使硬件操作的效率大打折扣,许多新硬件的新特性无法直接使用,这对多媒体和游戏的发展显然是一种障碍。DirectX是微软公司提供的一套优秀的应用程序编程接口(APIs),用于联系应用程序和硬件自身,它对发展Windows平台下的多媒体应用程序和电脑游戏起到了关键的作用。
DirectX组件包括:DirectDraw、DirectSound、DirectPlay、Direct3D、DirectInput、DirectSetup、AutoPlay等。
总之,DirectX的主要好处有两个:为软件开发者提供与硬件的无关性;为硬件开发提供策略。
为得到最新的版本,应该从最新的Microsoft Platform SDK中将DirectX安装到系统中。可以在http://www.microsoft.com/msdn站点或者MSDN光盘中找到platform SDK。缺省情况下,Microsoft Platform SDK被安装到缺省驱动器根目录下的\MSSDK目录中。DirectX 的头文件安装在\MSSDK\INCLUDE目录中,Lib文件安装在\MSSDK\LIB目录中。
Platform SDK包含了一些非常好的DirectX例子和文档。早期发布的DirectX 文档非常粗略而且有些是错误的,现在的版本已经极大地改正了这一问题。最好要熟悉这些文档。
所幸的是,不必一次就处理DirectX的全部功能。DirectX是一套可以分别使用的组件。实际上,在编程概念中,DirectX的不同部分互相没有联系。它们仅仅是具有相同的设计风格和目标:使Windows的游戏编程变得容易。
使用DirectX组件的程序有什么特殊的地方吗?根本没有。使用DirectX组件的程序是基于Win32的程序,它们使用普通Win32 API集,并且可以访问所有可以获得的操作系统工具。实际上,DirectX既可以用于GUI程序,也可以用于控制台程序。可以直接用Petzold-style SDK编程开发程序,也可以用基本类库,如MFC。总的说,唯一的要求是大多数DirectX组件在程序中需要HWND,所以至少要有一个窗口。
2、DirectX 9.0家族的所有成员
DirectX Graphics:集成了以前的DirectDraw 和Direct3D技术。DirectDraw主要负责2D加速,以实现对显卡内存和系统内存的直接操作;Direct3D主要提供三维绘图硬件接口,它是开发三维DirectX游戏的基础。
DirectInput:主要支持输入服务(包括鼠标、键盘、游戏杆等),同时支持输出设备。
DirectPlay:主要提供多人网络游戏的通信、组织功能。
DirectSetup:主要提供自动安装DirectX组件的API功能。
DirectMusic:主要支持MIDI音乐合成和播放功能。
DirectSound:主要提供音频捕捉、回放、音效处理、硬件加速、直接设备访问等功能。
DirectShow:为Windows平台上处理各种格式的媒体文件的回放、音视频采集等高性能要求的多媒体应用,提供了完整的解决方案。
DirectX Media Objects:DirectShow Filter 的简化模型,提供更方便的流数据处理方案。
3、DirectX的作用
DirectX软件开发包是微软公司提供的一套Windows操作平台上的开发高性能图形、声音、输入、输出和网络游戏的编程接口。它提供了硬件设备无关性。
4、DirectShow的由来及介绍
DirectShow是从DirectX6.0中的DirectX Media 发展而来的,它集成了DirectX家族中其他成员(DirectDraw、DirectSound等)的技术。DirectX Media Objects是从DirectX8.1的DirectShow中分离出来的,成为了另一种高效率的流数据处理解决方案。
Microsoft DirectShow是一个基于Microsoft Windows平台的媒体流结构。它支持各种格式,包括高级流模式(ASF)、运动图像专家组(MPEG)、音频视频交错(AVI)、音频动态压缩第三层(MP3)和WAV声音文件。它支持Windows驱动模式(WDM)设备的捕捉,以及早期Widows设备的视频。DirectShow结合了其它的DirectX技术。当视频和音频的硬件加速可用时,它能够自动检测并进行使用,同时也支持没有硬件加速的系统。
DirectShow媒体重放、格式转换和捕捉的任务变得简单。同时,它为需要自定义的解决方案的应用程序提供了对底层流控制结构的访问。您也可以创建自己的DirectShow组件,来支持新的格式或自定义效果。
使用DirectShow的应用程序类型包括DVD播放器、视频编辑应用程序、AVI到ASF的转换器、MP3播放器和数字视频捕捉应用程序。
DirectShow是基于组件对象模型(COM)的。要做一个DirectShow的应用程序,您必须了解COM客户端编程。对于大多数应用程序,您不需要实现您自己的COM对象。DirectShow提供了您所需要的组件。(如果您想写自己的组件扩展DirectShow,则必须以COM对象的方式来实现。)
发表评论
-
等待起风的日子
2012-01-20 00:35 638等待起风的日子 2011年05月13日 下午和周筠老师聊 ... -
c#调用Win32 API
2012-01-20 00:35 863c#调用Win32 API 2010年10月29日 Wi ... -
用IIS发布网站
2012-01-20 00:34 733用IIS发布网站 2010年07月15日 1,安装iis ... -
Android领衔:2010年移动开发平台回顾
2012-01-20 00:34 564Android领衔:2010年移动开发平台回顾 2010年1 ... -
【教程】Android系统手机 菜鸟扫盲汇总
2012-01-17 00:53 794【教程】Android系统手机 菜鸟扫盲汇总 2011年10 ... -
手把手教你写脚本引擎(二)命令脚本
2012-01-17 00:52 1055手把手教你写脚本引擎( ... -
单机MySQL数据库的优化
2012-01-17 00:52 627单机MySQL数据库的优化 ... -
ADO.NET的最佳实践技巧
2012-01-17 00:52 550ADO.NET的最佳实践技巧 2 ... -
摘嵌入式教案2
2012-01-15 19:38 565摘嵌入式教案2 2009年12 ... -
程序工具
2012-01-15 19:38 609程序工具 2010年10月15日 开发(Developm ... -
各种计算机语言的盘点
2012-01-15 19:37 577各种计算机语言的盘点 2010年01月28日 转自:ht ... -
arm linux 编译环境建立(文摘)
2012-01-15 19:37 649arm linux 编译环境建立(文摘) 2011年02月2 ... -
#ifdef __cplusplus是什么意思
2012-01-15 19:37 930#ifdef __cplusplus是什么意思 2009年1 ...
相关推荐
DirectX 中文简介
包含三个组件,方便只要dll的下载,在项目当中使用过,肯定是可以用的。 其中包含: Microsoft.DirectX.dll Microsoft.DirectX.DirectSound.dll Microsoft.DirectX.AudioVideoPlayback.dll
DirectX 简介 DirectX 对于大多数游戏爱好者来说都不陌生(当然,那些只在DOS下艰苦作战的朋友例外),在安装一个游戏前,系统总是会提示你是否需要同时升级 DirectX。简单地说,DirectX 就是一系列的 DLL (动态...
DirectX简介,介绍Direct3D开发环境配置和三维场景绘制的实现过程,并通过案例讲述基于面向对象思想的Direct3D开发过程模块封装方法。 第 4 章. 基本空间变换,介绍计算机图形学的空间变换原理和算法。 第 5 章. ...
14DirectX编程简介.pdf
DirectX 简介 DirectX 对于大多数游戏爱好者来说都不陌生(当然,那些只在DOS下艰苦作战的朋友例外),在安装一个游戏前,系统总是会提示你是否需要同时升级 DirectX。简单地说,DirectX 就是一系列的 DLL (动态...
MSDN的DirectX 8 简介,希望对大家有所参考。
14DirectX编程简介
《DirectX昨天今天明天》是关于DirectX的简介
源自NVIDIA,ATI等技术文档 D3D10的渲染管线被分成5个阶段(stage),每个阶段都有许多的状态(state),不同的状态决定了阶段的不同特征。
DirectX编程简介.doc 39页 唯一官方中文资料
内容简介 本书是一部关于DirectX游戏程序设计的理论用书,本书分为三个部分,第一部分介绍了Windows编程、3D图形学以及DirectX的基础知识;第二部分以示例方式介绍了在特效游戏中使用DirectX实现各种二维图形效果...
本代码是基于directx的 视频采集代码,简介明了
DirectX揭密 在Windows95/NT下用OpenGL编程 使用DirectX优化声音特性 OpenGL简介 WinDoom原代码下载
directx从入门到精通(direct简介)
DirectX 9 SDK for Borland C++ Builder
【内容简介】 本书是通往高级程序设计的桥梁,其中并不涉及初学者的内容,完全从实战出发讲述核心理论和程序设计!这就意味着没有把时间浪费在一些基础的概念,如初始化Direct3D或使用Windows的消息处理上,所以你...