谁能告诉我DirectX是干什么用的?
目录
形式
分类
如何学习DirectX
DirectX的历史
打开DirectX加速方法
DirectX11.1
发动
摘要
简介
Microsoft DirectX是一组技术,旨在使基于Windows的计算机成为运行和显示具有丰富多媒体元素(如全色图形、视频、3D动画和丰富音频)的应用程序的理想平台。DirectX包括安全和性能更新,以及许多涵盖所有技术的新功能。应用程序可以通过使用DirectX API来访问这些新功能。
功能
DirectX增强了3d图形和音效,为设计师提供了相同的硬件驱动标准,让游戏开发者不必为每个品牌的硬件编写不同的驱动,也降低了用户安装和设置硬件的复杂度。从字面上看,Direct就是直接的意思,后面的X代表很多意思。从这一点上,我们可以看到DirectX似乎为许多软件提供了直接服务。
比如以前硬核玩家在DOS下玩游戏,不用像我们现在这样安装。他们通常必须先设置声卡的品牌和型号,然后设置IRQ(中断)、I/O(输入和输出)和DMA(访问模式)。如果任何设置是错误的,游戏声音就不会出来。这部分设置不仅让玩家头疼,也让游戏开发者头疼,因为为了让游戏在很多电脑上正确运行,开发者在游戏制作之初就必须收集市场上所有声卡的硬件数据,然后根据不同的API(应用编程接口)编写不同的驱动,这是游戏制作公司很难完成的,所以当时的多媒体游戏很少。微软看到了这个问题,为众多厂商推出了* * *应用程序接口——Directx。只要游戏是按照DirectX开发的,不管你是什么显卡或者声卡都可以玩,也能玩出比较好的效果。当然前提是你的显卡和声卡的驱动也必须支持DirectX。
编辑此段落
形式
DirectX由许多API组成。按性质可分为四个部分:显示部分、声音部分、输入部分和网络部分。
显示部分
显示部分是图形处理的关键,分为DirectDraw(DDraw)和Direct3D(D3D)。前者主要负责2D图像加速。包括很多方面:我们玩mpg,DVD电影,看图片,玩小游戏等。我们都用DDraw。你可以理解为所有带下划线的部分都用DDraw。后者主要负责3D效果的显示,比如CS中的场景和人物,FIFA中的人物等。,都是用DirectX Direct3D。
声音部分
声音部分最重要的API是DirectSound,不仅可以播放声音和处理混音,还可以增强3d音效和提供录音功能。我们前面提到的声卡兼容性的例子就是用DirectSound解决的。
输入部分
输入部分DirectInput可以支持很多游戏输入设备,可以让这些设备发挥出最佳状态和所有功能。除了键盘和鼠标,还可以连接手柄、操纵杆、模拟器等。
网络部分
DirectPlay,网络部分,主要是针对有网络功能的游戏开发的。它提供了多种连接方式,如TCP/IP、IPX、调制解调器、串口等。,让玩家可以用各种联网模式进行对战。此外,它还提供网络对话功能和安全措施。
编辑此段落
分类
DirectX不是一个简单的图形API,而是微软开发的一个广泛使用的API。它包括Direct graphics(Direct 3d+DirectDraw)、直接输入、直接播放、直接声音、直接显示、直接设置、直接媒体对象等几个组件。它提供了一套完整的多媒体接口方案。只是它在3D图形方面的出色表现让它的其他方面显得黯淡无光。DirectX最初是为了弥补Windows 3.1系统图形和声音处理能力的不足而开发的,现在已经发展成为对整个多媒体系统的各个方面都有决定性影响的接口。DirectX是一组底层的“应用编程接口(API)”,可以为Windows程序提供高性能的硬件加速多媒体支持。Windows支持DirectX 8.0,可以增强电脑的多媒体功能。使用DirectX,可以访问显卡和声卡的功能,使程序提供逼真的三维(3D)图形和令人陶醉的音乐和音效。DirectX使程序能够很容易地确定计算机的硬件性能,然后设置匹配的程序参数。该程序使多媒体软件程序能够在具有DirectX兼容硬件和驱动程序的基于Windows的计算机上运行,同时确保多媒体程序能够充分利用高性能硬件。DirectX包含一组API,通过这些API可以访问高性能硬件的高级功能,例如3D图形加速芯片和声卡。这些API控制低级功能(包括二维(2D)图形加速),支持输入设备(如操纵杆、键盘和鼠标)并控制混音和声音输出。组成DirectX的下列组件支持低级功能:Microsoft DirectDraw Microsoft DirectDraw API支持快速访问计算机视频适配器的加速硬件功能。它支持在所有视频适配器上显示图形的标准方法,当使用加速驱动程序时,可以更快更直接地访问它。DirectDraw为程序(如游戏和2D图形包)和Windows系统组件(如数字视频编解码器)提供了一种独立于设备的方法来访问特定显示设备的功能,而不需要用户提供有关设备功能的其他信息。
Microsoft direct 3d Microsoft direct 3d API(direct 3d):为大多数新视频适配器的内置三维颜色匹配功能提供接口。Direct3D是一种低级3d API,它为软件程序提供了一种与设备无关的方法,以便与加速器硬件进行有效而强大的通信。Direct3D包括专用CPU指令集支持,可以为新计算机提供进一步的加速支持。
Microsoft direct sound Microsoft direct sound API:提供程序和音频适配器的混音、声音播放和声音捕获功能之间的链接。DirectSound为多媒体软件程序提供低延迟混音、硬件加速和对声音设备的直接访问。该功能是在保持与现有设备驱动程序兼容时提供的。
Microsoft direct music Microsoft direct music API:它是DirectX的一个交互式音频组件。与捕获和播放数字声音样本的DirectSound API不同,DirectMusic处理数字音频和基于消息的音乐数据,这些数据由声卡或其内置软件合成器转换为数字音频。DirectMusic API支持乐器数字接口(MIDI)格式的输入,以及压缩和未压缩的数字音频格式。DirectMusic为软件开发者提供了创建令人陶醉的动态音轨的能力,以响应软件环境中的各种变化,而不仅仅是用户直接输入变化。
Microsoft direct input Microsoft direct input API:为游戏提供高级输入功能,可以处理操纵杆和其他相关设备的输入,包括鼠标、键盘和强大的反馈游戏控制器。
微软DirectPlay微软DirectPlay API:支持通过调制解调器、互联网或局域网连接游戏。DirectPlay简化了对通信服务的访问,并为游戏提供了一种不受协议或在线服务限制的相互通信方式。DirectPlay提供了多种游戏服务,可以简化多媒体播放器游戏的初始化,支持可靠的通信协议,保证重要的游戏数据不会在网络上丢失。DirectPlay 8.0的新功能是支持通过网络进行语音通信,可以大大提高基于多媒体播放器的群体游戏的娱乐性。同时,该组件还通过提供与其他玩游戏的人交谈的功能,使团体游戏更具吸引力。
Microsoft DirectShow Microsoft DirectShow API:提供在您的计算机和互联网服务器上捕获和播放高质量多媒体文件的功能。DirectShow支持各种音频和视频格式,包括高级流格式(ASF)、音频-视频交错(AVI)、数字视频(DV)、动画专家组(MPEG)、MPEG音频层3 (MP3)、Windows Media音频/视频(WMA/WMV)和WAV文件。DirectShow还具有视频捕获、DVD播放、视频编辑和混合、硬件加速视频解码以及调谐广播模拟和数字电视信号的功能。
编辑此段落
如何学习DirectX
怎么学?
作为一个运行规则,Direct自身的运行环境必须严格规范,也就是说Direct是一个专门为Windows服务的规则。然后它的表达环境是中文的。不是英语。所以,要想直接理解并灵活运用,不仅要理解这句话的构成,还要透彻分析汉语的语言规律,即Windows的运行原理和Windows自身输入输出的方式。在此基础上,自然就明白了直接的规律。
是不是说不用直接学习了?
不会,但是在理解基本原理的基础上观察直接代码的结构会很容易。这里我想说的是,Direct本身是很厉害的,但是并不难学。难点在于原理的学习。不仅要看智商,还要看耐心。几千页的原理,一年半读不完。研究完这些,至于语法规则,就不值一提了。
直接最好从基本原理入手,但是原理这么复杂,直接学不会吗?
这句话也不对。当一个新事物来到你面前,你要从两个方面着手研究它。一种是表面现象,即直接语言的规则、使用习惯和方法。另一方面,这种现象是从已知条件中推导出来的。意思是从原理和代码开始,从代码开始就要记住代码的习惯。那么了解这个原理有助于记忆,你可以很快明白是怎么回事。也就是说,虽然我们不认同背代码,但是我们根本就忘不了。虽然我们赞同从原则出发,但从实际出发,还是希望你能量力而行。
总的来说,教Direct要有一定的编程基础。不建议刚开始就直接学。毕竟直接是个比较高级的东西。我建议你在精通C++和Dos等一些语言的情况下直接学习。
当然,也不是不可能。比如3Ds Max就是基于Direct。仍然可以制作模型、图像或动画。当然,这也取决于你研究的角度。
编辑此段落
DirectX的历史
DirectX 1.0
第一代DirectX非常不成功,推出的时候很多硬件都不支持。当时基本采用的是专业图形API——OpenGL,硬件支持不足成为其普及的最大障碍。
DirectX 1.0是第一个可以直接读取硬件信息的程序。它提供了更直接的读取图形硬件的性能(如显卡上的块移动功能)和基本的声音和输入设备功能(函数),使开发的游戏可以加速二维(2D)图像。这个时候的DirectX还没有包括现在所有的3D功能,还在一个初级阶段。
DirectX 2.0
DirectX 2.0在二维图形方面做了一些改进,增加了一些动态效果,采用了直接3D技术。所以DirectX 2.0和DirectX 1.0差别很大。在DirectX 2.0中,使用“平滑模拟和RGB模拟”来加速3D图像的计算。DirectX 2.0还采用了更加用户友好的安装程序,并纠正了应用程序界面中的许多问题。从DirectX 2.0开始,整个DirectX设计架构的雏形已经基本完成。
DirectX 3.0
DirectX 3.0是在1997年Windows95最后一个版本发布后不久推出的。此时3D游戏开始深入人心,DirectX也逐渐被软硬件厂商认可。1997年有三个应用程序接口标准,分别是专业的OpenGL接口、微软的DirectX D接口和3DFX公司的Glide接口。当时3DFX公司是最有实力的显卡厂商,其Glide接口自然被广泛使用。但是随着3DFX公司和Voodoo显卡的没落,Glide界面逐渐消失。
DirectX 3.0是DirectX 2.0的简单升级版,变化不大。包括对DirectSound(针对3D音效功能)和DirectPlay(针对游戏/网络)的一些修改和升级。DirectX 3.0集成了简单的3D特效,不是很成熟。
DirectX 5.0
微软没有推出DirectX 4.0,而是直接推出了DirectX 5.0。该版本对Direct3D进行了很大的改动,加入了雾化效果、Alpha混合等3D特效,以增强3D游戏中的空间感和真实感,还加入了S3纹理压缩技术。
同时,DirectX 5.0在其他组件上也得到了加强,在声卡和游戏手柄上有所改进,支持更多设备。所以DirectX发展到DirectX 5.0才真正成熟。这个时候DirectX的性能一点也不逊色于其他3D API,很有可能会迎头赶上。
DirectX 6.0
DirectX 6.0推出时,其最大的竞争对手之一Glide已经逐渐没落,DirectX得到了大多数厂商的认可。DirectX 6.0增加了双线性过滤、三线性过滤等技术来优化3D图像的质量,游戏中的3D技术也逐渐进入成熟阶段。
DirectX 7.0
DirectX 7.0最大的特点是支持T &;l,中文名字叫“坐标变换与光源”。3D游戏中的任何物体都有一个坐标。当物体移动时,其坐标发生变化,这意味着坐标变换。3D游戏中,除了场景和物体,还需要灯光。没有照明,就没有3D对象的表示。无论是实时3D游戏还是3D图像渲染,带光照的3D渲染都是最耗费资源的。OpenGL中虽然有相关技术,但之前从未在民用级硬件中出现过。
美国电话电报公司。在L出现之前,位置转换和灯光都需要CPU来计算。CPU越快,游戏性能越流畅。T & ampL函数后,这两个效果由显卡的GPU计算,让CPU从繁忙的工作中解脱出来。换句话说,有T &;l显卡,使用DirectX 7.0,即使没有高速CPU也能流畅运行3D游戏。
DirectX 8.0
DirectX 8.0的推出引发了一场显卡革命。它首次引入了“像素渲染”的概念,同时拥有像素着色器和顶点着色器,体现在动态光影效果上。t&硬件T & amp与固定的光影转换相比,VS和PS单元更加灵活,这使得GPU真正成为可编程处理器。这意味着程序员通过它们构建3D场景的难度要小得多。通过VS和PS的渲染,很容易在水面上营造出真实的动态波纹光影效果。这时,DirectX的权威终于确立了。
DirectX 9.0
2002年底,微软发布了DirectX9.0,DirectX9中PS单元的渲染精度已经达到浮点精度,传统的硬件T & amp;l单元也被取消了。新的VertexShader (VertexShader引擎)编程会比以前复杂很多。新的顶点着色器标准增加了进程控制和更多常数,每个程序的着色指令数量增加到1024。
PS 2.0具有完全可编程的架构,可以即时计算纹理效果并动态映射纹理,不占用内存。理论上,它可以无限提高纹理贴图的分辨率。另外,PS1.4只能支持28条硬件指令,同时操作6个素材,而PS2.0可以支持160条硬件指令,同时操作16个素材。新的高精度浮点数据规范可以使用多个纹理图,可操作的指令个数可以任意长,可以轻松实现胶片级的显示效果。
通过增加顶点程序的灵活性,VS 2.0显著提升了旧版本(DirectX8)的VS性能。对于新的控制指令,可以用通用程序代替以前专用的单独着色程序,效率提高很多倍。增加循环作业指令,减少工作时间,提高加工效率;扩展着色指令的数量从128增加到256。
增加浮点数据的处理功能,过去只能处理整数,提高渲染精度,使最终处理的色彩格式达到电影水平。它突破了之前限制PC图形图像质量的数学精度障碍,每条渲染管道都升级到了128浮点颜色,让游戏程序员更容易创造出更漂亮的效果,也更容易让程序员编程。
DirectX 9.0c
与过去的DirectX 9.0b和Shader Model 2.0相比,DirectX 9.0c最大的改进是引入了对Shader Model 3.0的全面支持(包括像素着色器3.0和顶点着色器3.0)。例如,DirectX 9.0b的着色器模型2.0仅支持256个顶点着色器指令和96个像素着色器指令。在最新的着色器模型3.0中,顶点着色器和像素着色器的最大指令数上升到了65,535。新的技术特性,如动态程序流控制,位移映射,多渲染目标(MRT),表面散射表面阴影,软阴影,环境和地面阴影,全局照明等。GeForce 6、GeForce7系列和镭龙X1000系列立即为新一代游戏提供了强大的动力,也为复杂的数字世界提供了无与伦比的现实主义和幻想,以及在影视质量环境中移动的现实人物。
因此,DirectX 9.0c和Shader Model 3.0标准的推出可以说是DirectX发展的一个重要转折点。在DirectX 9.0c中,Shader Model 3.0不仅取消了指令数的限制,增加了位移贴图等新特性,还下大力气解决游戏的执行效率和质量。Shader Model 3.0诞生后,人们对游戏的态度开始从过去单纯追求速度转变为兼顾游戏质量和运行速度。因此,Shader Model 3.0对游戏行业的影响非常深远。
Directx 10.0
已包含在Windows Vista操作系统中,目前不能单独下载使用。
新的DirectX允许您获得更好的图像显示质量,使多人游戏可扩展,并包括更好的音频效果。它加强了DirectDraw和Direct3D之间的接口,简化了应用程序的扩展,提高了性能。改进的图形创建工具,更容易制作最好的3d角色和环境;点光源和像素光使图像更真实;DirectSound和DirectMusic得到加强,其应用扩展得到简化。DLS2的音频合成功能提高了乐器音频的真实感;DirectInput的设备映射功能使得对设备的支持更加容易。DirectPlay提高了多人游戏的性能和可扩展性;DirectPlay提供IP语音通信;DirectShow的应用程序编程接口提供实时音频/视频合成和编辑。DirectShow支持Windows media音视频的读写(WMA和WMV);微软电视技术可以支持数字电视节目。当然最重要的是一些新游戏需要。DirectX Redist通常每两个月更新一次,包括DirectX运行时的所有更新,可以替代之前发布的旧版本,适用于Windows XP、Server 2003、Vista等操作系统,但不支持Windows 9x/2000。一般最新的3D游戏等应用都需要新的DirectX接口,所以强烈建议更新。
Vista DX10用户也需要。
显卡支持的DirectX版本已经成为评价显卡性能的标准。用户可以从显卡支持哪个版本的DirectX来区分显卡的性能,从而选择适合自己的显卡产品。
现在不下载最新版本的DirectX后果很严重!您可以单击连接到最新的DirectX下载页面(2008年6月更新)
DirectX 10.1
就像之前的DX版本一样,DX10.1是DX10的超集,所以会支持DirectX 10的所有功能,同时会支持更多的功能,提供更高的性能。
DX10.1的一大改进是改进的着色器资源访问函数,在多样本AA中读取样本时有更好的控制能力。此外,DX10.1还将能够创建定制的下采样滤波器。
DX10.1还会有更新的浮点混合功能,对渲染目标更有针对性。渲染目标混合会有新的格式,渲染目标可以实现独立混合。阴影功能一直是游戏的重要特效,Direct3D 10.1的阴影过滤功能也将得到提升,有望进一步提升画质。
性能方面,DirectX 10.1将支持多核系统,性能更高。在渲染、反射和散射方面,Direct3D 10.1会减少对API的调用次数,从而达到很好的性能提升。
其他方面,DX10.1改进了很多,包括32位浮点滤波,可以提高渲染精度,提高HDR渲染的图像质量。全抗锯齿应用控制也将是DX10.1的亮点。应用程序将能够控制多重采样和超级采样的使用,并选择出现在特定场景中的采样模板。DX10.1每个像素至少需要四个样本。
DX10.1还将推出一款更新的驾驶车型,WDDM 2.5438+0。与DX10的WDDM2.0相比,2.1有一些显著的改进。
第一,内容转换功能更多。WDDM2.0支持在处理一个命令或三角形后进行内容转换,而WDDM2.1可以立即进行内容转换。由于GPU要同时并行处理多个线程,所以内容转换的即时性既能保证转换质量,又能提高GPU效率,减少等待时间。此外,由于WDDM 2.1支持基于进程的虚拟内存分配,处理GPU和驱动程序页面错误的方式更加成熟。
预计微软将在两周内(2008年7月中旬)宣布新一代API: DirectX 11。消息人士指出,微软将在7月22日的Gamefest 2008上公布新一代API。我们得到的关于DirectX 11的最新消息是,NVIDIA将在8月底的“NVISION 08”发布会上对DirectX 11进行说明。
微软组织的Gamefest 2008大会将于7月22-23日在西雅图举行。Gamefest 2008大会是微软一年一度的游戏技术讨论盛会,所以关于下一代游戏技术接口API的消息自然是不可或缺的话题。
DirectX 11引入的最大新技术特性无疑是镶嵌/位移。我们还听说多线程渲染和计算着色器也将是DirectX 11中的重要环节。另外,据说DirectX 11还会引入着色器模型5.0。具体细节目前基本不知道,光线追踪和光栅化技术的支持也没提。
至于DirectX 11何时正式推出,微软一直没有给出确切的消息。之前的传闻声称它将在今年年底和明年年初完成,它可能会与Windows Vista SP2或Windows 7一起出现。在DX11之前,DX10.1将是最后一次小更新。
Directx 11
2009年10月9日星期五,65438,微软将向公众发布Windows 7客户端的测试版。而在前一天,也就是65438+10月8日,微软将率先发布Windows 7服务器版的测试版。
Windows 7是微软的下一代操作系统。业内普遍认为,微软将在2009年圣诞购物季之前发布Windows 7正式版。
在微软刚刚发布的Windows 7测试版中,一些已经安装的用户发现DirectX 11已经被收录。DirectX 11作为一个3D图形接口,不仅支持未来的DX11硬件,在向后兼容性上也支持目前的DirectX 10和10.1硬件。DirectX 11增加了新的计算着色器技术,可以让GPU做更一般的计算工作,而不仅仅是3D计算,这可以鼓励开发者更好地将GPU用作并行处理器。
DirectX 11已经包含在微软刚刚发布的Windows 7测试版中。
此外,DirectX 11还支持tessellation mosaic技术,帮助开发者创建更加细腻平滑的模型,实现高质量的实时渲染和预渲染场景。多线程是DirectX 11的另一大亮点。DX11可以更好的利用多线程资源,从而让游戏更有效的使用多核处理器。
编辑此段落
打开DirectX加速方法
有时候重装系统后发现很多3D游戏都跑不动了,只有一些传统的2D平面游戏勉强能跑,而且速度很慢。这不是因为Windows 2003不支持3D游戏,而是因为系统设置。
解决方法:首先请确保用正确的方法安装显卡驱动,然后开启DirectX加速。DirectX加速是3D游戏最基本的需求。为了让Windows更加单一面向服务器平台应用,微软默认关闭加速功能。即使安装了最新的DirectX 10.0,加速功能也不会自动开启,必须手动设置。在开始→运行对话框中输入“dxdiag ”,打开DirectX诊断工具。然后,在显示栏中启用DirectDraw、Direct3D和AGP的纹理加速功能。这样,Windows Server 2003可以运行各种3D游戏。此外,Windows Server 2003还默认关闭硬件加速,可以在显示属性的高级菜单中设置为完全加速。
编辑此段落
DirectX11.1
DirectX 11是下一代DirectX 12还是改进版DirectX 11?Intel的一条产品线泄露了秘密,后面是DirectX 11就是DirectX 11。
根据外媒SoftPedia曝光的英特尔产品路线图,Sandy Bridge目前集成了英特尔第6代图形核心,支持DirectX 10.1和OpenGL 3.0。到了Ivy Bridge,已经演进到第7代,可以支持DirectX 11和OpenGL 3.1。2013年,同样是22nm但架构再次进化的Haswell处理器诞生了。将集成第七代英特尔图形核心增强版,支持OpenGL 3.2和DirectX 11.1,推荐操作系统为64位Windows 8。
Haswell将采用Tri-Gate 22nm制造技术和可调TDP技术,在性能和节能之间实现更好的平衡。同时,Haswell将采用新的AVX2指令集。目前具体发布时间未知,但从最近的蓝图来看,服务器Haswell产品将于2014 Q1发布。
此外,英特尔还在努力让其图形核心获得各种专业图形软件的DirectX和OpenGL认证。目前,Sandy Bridge已获得AutoCAD 10/11/12、Photoshop CS5、Civil 3D 11/12的认可,Ivy Bridge和Haswell将尝试获得3ds Max、Avid Media等专业。
开放分类:
游戏,电脑,微软,界面,图书馆。
我来完善一下“DirectX”的相关词条:
OpenGL采集卡
合作编辑
月夜无棣,完美野兽,百科机器人,琪雅,杰伦泛光,chenze1015,jinngoo。