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

嘉定小李

嘉定小李

2016-02-19 10:10

下面图老师小编跟大家分享Direct X和OpenGL是什么以及它们的区别,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

提起图形处理和显卡相关的内容,尤其是玩电脑游戏的时候(通常是安装时)很多人是不是很容易就想起了一个熟悉的名词叫做Direct X,通常什么Direct 9.0c之类的东西都是打游戏必备的。那么大家知道Direct X是什么吗?另外你知道一个类似名词OpenGL是什么吗?

本文将对他们进行简要的介绍和对比,希望对大家了解和显卡密切相关的Direct X和OpenGL。

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/diannaorumen/)

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为主的网络波分,方便网络游戏等操作

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/diannaorumen/)

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下渲染效果要好。

展开更多 50%)
分享

猜你喜欢

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

电脑入门
Direct X和OpenGL是什么以及它们的区别

它们有哪些区别

电脑网络
它们有哪些区别

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

IBM有哪些开放集群系统,它们的区别是什么?

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
IBM有哪些开放集群系统,它们的区别是什么?

气垫口红和口红有什么区别 教你四点区别它们

气垫口红 口红 化妆
气垫口红和口红有什么区别 教你四点区别它们

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

AI和 PS 的区别是什么?

PS
AI和 PS 的区别是什么?

粉刺和粉刺的区别是什么

电脑网络
粉刺和粉刺的区别是什么

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Android中 自定义数据绑定适配器BaseAdapter的方法

Android中 自定义数据绑定适配器BaseAdapter的方法

基于Android CALL && SendMes Test的相关介绍

基于Android CALL && SendMes Test的相关介绍
下拉加载更多内容 ↓