Direct X和OpenGL是什么以及它们的区别

如题所述

提起图形处理和显卡相关的内容,尤其是玩电脑游戏的时候(通常是安装时)很多人是不是很容易就想起了一个熟悉的名词叫做Direct X,通常什么Direct 9.0c之类的东西都是打游戏必备的。那么大家知道Direct X是什么吗?另外你知道一个类似名词OpenGL是什么吗?
本文将对他们进行简要的介绍和对比,希望对大家了解和显卡密切相关的Direct X和OpenGL。
Direct X是什么?
Direct X是Direct eXtension的简写,可以进一步简写成DX。为微软公司开发的多媒体编程接口,目前只支持Windows平台,虽然Linux等平台依靠wine等程序也能实现DirectX但是性能相当可怜。
Direct X发展到现在已经有11代产品了,目前最常用的有两个Direct X 11.1和Direct 9.0c。前者是Windows7/8的标准配置,后者是WindowsXP的标准。对于很多新游戏而言都以Direct X 11为接口。Direct X有很多API接口, 可以分为以下几个部分:
Direct Draw和Driect 3D为主的显示部分。其中Direct Draw是负责平面显示的,而Direct 3D是负责3D运算的。通常而言大型3D游戏运用的就是Direct 3D部分(当然,如果采用Direct X作渲染的话)。
以DirectSound为主的声音部分
以DirectInput为主的输入设备,键盘鼠标遥感等游戏控制设备的输入就在这里完成
以DirectPlay为主的网络波分,方便网络游戏等操作……
Direct X借助Windows的顺风车已经占领了相当大的 市场,但是仅仅支持Windows系统这个弊端就促使其他操作系统进行自己的多媒体编程计划,目前最强大的就是OpenGL。
OpenGL是什么?
OpenGL是由开源社区提供的免费开源的多媒体编程接口,全称是Open Graphics Library。OpenGL功能非常强大,但是使用起来也是相当的复杂, 开源社区为任何操作系统提供OpenGL支持,所以适用范围也是相当的广。很多游戏开发采用OpenGL作为渲染方式,这样可以方便的向Linux和OS X等平台移植。
而且另一个超级编程语言java也已经完成了和OpenGL的整合,意味着使用java 3D编写的3D程序等可以实现OpenGL整合。当然是用java 3D也可以调用Direct X来进行加速。
在非Windows平台下,目前仅能使用OpenGL进行加速,而在Windows平台下视频功能可以由DirectX或者OpenGL完成。由于开发商的选择不同,通常的硬件都是支持者两种加速方式的。客观的来说在超高端硬件上对OpenGL的支持更好。
在Windows平台下,常规硬件(非服务器级别的)下,Direct X对3D的渲染性能要比OpenGL略微好点,尤其是在Windows7/8上。但是在Linux平台下OpenGL的渲染要比在Windows下对OpenGL的渲染强。
总的来说,Windows下Direct X性能比较好,不过Open GL也不差。但是同样是OpenGL在Linux,OS X下比Windows下渲染效果要好。
温馨提示:内容为网友见解,仅供参考
无其他回答

Direct X和OpenGL是什么以及它们的区别
在Windows平台下,常规硬件(非服务器级别的)下,Direct X对3D的渲染性能要比OpenGL略微好点,尤其是在Windows7\/8上。但是在Linux平台下OpenGL的渲染要比在Windows下对OpenGL的渲染强。总的来说,Windows下Direct X性能比较好,不过Open GL也不差。但是同样是OpenGL在Linux,OS X下比Windows下渲染效果要...

DirectX和OpenGL比较?和显卡有什么关系吗?
DirectX 引擎:性能好,兼容性差。 OpenGL引擎:兼容性强,性能差。 在DirectX在还有一个HEL功能,在它的帮助下可以用你机器中现成的硬件设备模拟成为其它的部件,比如显卡没有3D硬件加速功能,但是通过DirectX就可以将其模拟成为带有3D加速功能的显卡,这样在运行游戏的时候就能够获得额外的效果。3,切换条...

为什么都用direct x开发pc游戏而不是open gl
OpenGL的硬件兼容性不如DirectX。用OpenGL写一个程序,在nVidia上跑起来了,百分之八十是没法在intel上跑,百分之九十九没法在AMD上跑。OpenGL直到目前为止如果不用DSA的话,设置一个对象的属性还得先绑定,这样一来就使得code变得高度依赖于一个时刻在变的状态,而且很多驱动的实现某些特定的状态下有各种b...

什么是OPENGL和DIRECT X?是硬件吗?
OPENGL是一种显卡技术,DIRECT X主要用软件支持,技术是Direct3D

OpenGL和Direct 3D有什么区别?
了解了以上的这些我们就不难理解,OPENGL和D3D的插件只是基于不同的API开发出来的,使用不同的程序内核而已,由于OPENGL对3D显卡性能挖掘的更深,因而已经成为了好的显卡同志的不二选择,这就是OPENGL 比D3D插件要求高的根本原因,也是其效果好的根本原因~……但,反观D3D,由于其基于DIRECT X的API内核,...

OPENGL与DIRECT3D有啥区别?
由于OpenGL起步较早,一直用于高档图表工作站,其它3D图形功能很强,超过Direct X许多,可最大限度地发挥3D芯片的巨大潜力。 (名词解释:什么叫做API?API是Application Program-ming Interface的缩写,中文意思是应用程序设计接口。对于编写支持各种硬件设备或操作系统的程序而言,A-PI是许多程序的大集合。一...

为什么用direct编游戏,OPENGL呢
也降低用户安装及设置硬件的复杂度。这样说是不是有点不太明白,其实从字面意义上说,Direct就是直接的意思,而后边的X则代表了很多的意思,从这一点上我们就可以看出DirectX的出现就是为了为众多软件提供直接服务的。OpenGL是个与硬件无关的软件接口,可以在不同的平台如Windows 95、Windows NT、Unix、...

DirectX\/OpenGL是什么东西?
这样说是不是有点不太明白,其实从字面意义上说,Direct就是直接的意思,而后边的X则代表了很多的意思,从这一点上我们就可以看出DirectX的出现就是为了为众多软件提供直接服务的。举个例子吧,骨灰级玩家(玩游戏比较长的)以前在DOS下玩游戏时,可不像我们现在,安装上就可以玩了,他们往往首先要先...

试阐述OpenGL和DirectX各自的优、缺点。
Direct是直接的意思,X是很多东西,加在一起就是一组具有共性的东西,从内部原理探讨,也简单说来DirectX 就是一系列的 DLL (动态连接库),通过这些 DLL,开发者可以在无视于设备差异的情况下访问底层的硬件,DirectX 封装了一些 COM(Component Object Model)对象,这些 COM 对象为访问系统硬件提供了一...

OpenCL,OpenGL和DirectX三者的区别
OpenCL、OpenGL和DirectX之间不得不说的故事 业界对Apple的OpenCL的支持将成为它发展的重要因素,早在90年代中期,微软就曾经努力阻止OpenGL成为行业的标准,以推行自己的DirectX显卡软件和游戏工具。微软的Direct X起初的战略是为了推动DOS游戏开发者转向Windows,从此之后它就被绑定在Windows下为PC游戏服务,...

相似回答
大家正在搜