DX请问DX9,DX10是什么东东哪?
DirectX是一种图形应用程序接口(API),并不是一个单纯的图形API,它是由微软公司开发的用途广泛的API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多个组件,它提供了一整套的多媒体接口方案。 只是其在3D图形方面的优秀表现,让它的其它方面显得暗淡无光(PS:我们常将D3D和。微软将定义它为“硬件设备无关性”。Direct是直接的意思,X是很多东西,加在一起就是一组具有共性...全部
DirectX是一种图形应用程序接口(API),并不是一个单纯的图形API,它是由微软公司开发的用途广泛的API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多个组件,它提供了一整套的多媒体接口方案。
只是其在3D图形方面的优秀表现,让它的其它方面显得暗淡无光(PS:我们常将D3D和。微软将定义它为“硬件设备无关性”。Direct是直接的意思,X是很多东西,加在一起就是一组具有共性的东西。
简单的说它是一个辅助软件,一个提高系统性能的加速软件。
从内部原理探讨,DirectX 就是一系列的 DLL (动态连接库),通过这些 DLL,开发者可以在无视于设备差异的情况下访问底层的硬件,DirectX 封装了一些 COM(Component Object Model)对象,这些 COM 对象为访问系统硬件提供了一个主要的接口。
DirectX的发展经历了1。0-10很多版本,现在我们在选购显卡的时候,经常听说“XX显卡不支持DX9。0”等等,显卡所支持的DirectX版本已成为评价显卡性能的标准之一。
DirectX 9。0
2002年底,微软发布DirectX9。0。DirectX 9中PS单元的渲染精度已达到浮点精度,传统的硬件T&L单元也被取消。全新的VertexShader(顶点着色引擎)编程将比以前复杂得多,新的VertexShader标准增加了流程控制,更多的常量,每个程序的着色指令增加到了1024条。
SM2。0的shader性能更强,支持最高96指令的pixel shader长度,同时DirectPlay和一些音频方面也有大幅提升。
DirectX 9。0C
引入了对Shader Model 3。
0(包括Pixel Shader 3。0 和Vertex Shader 3。0两个着色语言规范)的全面支持。举例来说,DirectX 9。0b的Shader Model 2。0所支持的Vertex Shader最大指令数仅为256个,Pixel Shader最大指令数更是只有96个。
而在最新的Shader Model 3。0中,Vertex Shader和Pixel Shader的最大指令数都大幅上升至65535个,全新的动态程序流控制、 位移贴图、多渲染目标(MRT)、次表面散射 Subsurface scattering、柔和阴影 Soft shadows、环境和地面阴影 Environmental and ground shadows、全局照明 (Global illumination)等新技术特性,使得GeForce 6、GeForce7系列以及Radeon 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
DirectX 10的主要优势便是最大程度地降低了CPU负载,主要通过三个途径来达到这个目的:第一,修改API核心,使得绘制物体和切换材质特效时的消耗降低,提高绘图效率;第二,引入新的机制,降低图形运算操作对CPU的依赖性,使更多的运算在GPU中完成;第三,使大量的物体可以通过调用单条DirectX绘制命令进行批量绘制。
。收起