比较DirectX和OpenGL的区别

 我来答
帐号已注销
2019-08-02 · TA获得超过11.9万个赞
知道小有建树答主
回答量:109
采纳率:0%
帮助的人:4.6万
展开全部

1、两者的应用不同

DirectX可让以windows为平台的游戏或多媒体程序获得更高的执行效率,DirectX已被广泛使用于Microsoft Windows、Microsoft XBOX、Microsoft XBOX 360和Microsoft XBOX ONE电子游戏开发。

OpenGL用来绘制从简单的图形比特到复杂的三维景象。而另一种程序接口系统是仅用于Microsoft Windows上的Direct3D。OpenGL常用于CAD、虚拟现实、科学可视化程序和电子游戏开发。

2、两者的所属不同

DirectX(Direct eXtension,简称DX)是由微软公司创建的多媒体编程接口,是一种应用程序接口(API)。

OpenGL规范由1992年成立的OpenGL架构评审委员会(ARB)维护。ARB由一些对创建一个统一的、普遍可用的API特别感兴趣的公司组成。

3、两者的包括分类不同

DirectX包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多个组件,它提供了一整套的多媒体接口方案。

OpenGL 上下文(英语:OpenGL context)其中包括SDL、Allegro、SFML、FLTK、Qt等。也有一些库是专门用来创建 OpenGL 窗口的,其中最早的便是GLUT,比较新的也有GLFW可以使用。

参考资料来源:百度百科-DirectX

参考资料来源:百度百科-OpenGL

大野瘦子
高粉答主

2019-07-17 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:1227
采纳率:100%
帮助的人:33.4万
展开全部

一、意思不同

DirectX是一种应用程序接口(API),它可让以windows为平台的游戏或多媒体程序获得更高的执行效率,加强3d图形和声音效果,并提供设计 人员一个共同的硬件驱动标准,让游戏开发者不必为每一品牌的硬件来写不同的驱动程序,也降低用户安装及设置硬件的复杂度。

OpenGL是个专业的3D程序接口,是一个功能强大,调用方便的底层3D图形库。OpenGL的前身是SGI公司为其图形工作站开发的IRIS GL。

二、应用范围

在OpenGL的基础上还有Open Inventor、Cosmo3D、Optimizer等多种高级图形库,适应不同应用。其中,Open Inventor应用最为广泛。该软件是基于OpenGL面向对象的工具包,提供创建交互式3D图形应用程序的对象和方法,提供了预定义的对象和用于交互 的事件处理模块,创建和编辑3D场景的高级应用程序单元,有打印对象和用其它图形格式交换数据的能力。

三、组成

DirectX是由很多API组成的,按照性质分类,可以分为四大部分,显示部分、声音部分、输入部分和网络部分。显示部分担任图形处理的关键,分为DirectDraw(DDraw)和Direct3D(D3D),前者主要负责2D图像加速。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
福喜900
推荐于2017-04-29 · TA获得超过6.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:0%
帮助的人:1亿
展开全部
OpenGL是较老式的一种三维显卡,通常是显卡上面有自己的显频处理器,类似于系统的CPU,专门处理三维的加速用的,而不是用系统的CPU。以前这种显卡较贵,而且是专门给做三维尤其是AutoCAD等软件用的一种显卡。OpenGL有单核也有双核的,显卡的显存也是普通显卡的两倍左右。DirectX里面有所谓的Direct 3D的支持,就是假如显卡里面的芯片(普通的三维显卡的芯片,如nVidia的关于三维的处理模式是预设的,而且是硬件支持,假如三维软件需要的三维指令不再显卡的芯片里面,那么CPU就会自动接过来做运算,而OpenGL的显卡的处理器可以自己做运算,不需要用到系统的CPU)有支持三维的指令,那么微软的DirectX中介就会让显卡做计算,假如显卡没有,那么就会是系统的CPU做计算。现在比较高级的显卡都有很多硬件内崁式的指令在显卡的芯片里面。OpenGL是最好的三维,但是价钱较贵。DirectX里面的Direct 3D是最普遍的,但是因为三维的指令市场的更新,而芯片里面的指令是属于硬件,无法更新,所以要用到新的三维指令就要另买一个新的三维卡。这也就是为什么nVidia的9800要比9300好,好比8500好,因为越高的型号就有越新的三维指令。Google Earth是一款使用三维的模式计算和画出图像的软件,是利用非常微小的三角形和多角形来完成不同层次的图像,就像一个三维游戏一样。假如你的显卡支持OpenGL模式,那么Google Earth的绘画功能要较简单,以为大多数的计算过程你的显卡办得到。假如你的显卡不支持OpenGL模式,而是DirectX模式,那么Google Earth运行就较慢些,因为软件的更新和三维指令不一定是每一个三维显卡都支持的。所以就要变成较简单的模式了。nVidia的GeFore 9300GE应该是以DirectX模式运行的。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式