OpenGL原先是Silicon Graphics Incorporated(SGI公司)在他们的图形工作站上开发高质量图像的接口。但最近几年它成为一个非常优秀的开放式三维图形接口。实际上它是图形软件和硬件的接口,它包括有120多个图形函数,"GL"是"GRAPHIC LIBRARY"的缩写,意思是“图形库”。OpenGL的出现使大多数的程序员能够在PC机上用C语言开发复杂的三维图形。微软在Visual C++ 5中已提供了三个OpenGL的函数库(glu32.lib, glau.lib,OpenGL32.lib),可以使我们方便地编程,简单、快速地生成美观、漂亮的图形。例如,Windows NT中的屏幕保护程序中的花篮和迷宫等都给人们留下了深刻的印象
Direct3D是一种基于OLE COM的应用程序接口,它设计用于实现设备独立传输,高度优化,基于软件实现的实时3D再现,并使得3D硬件能够快速透明地存取。对于那些要求更多控制3D目标和情景以及要求直接存取3D加速器卡的开发者来说,这种API使开发者很容易将现行的3D应用移至Windows 98平台上。(OpenGL则是一种精确高性能的3D技术,它大多数用于CAD/CAM模型、动画制作、模拟以及科学显像应用当中。)
OpenGL 只是图形函数库。
DirectX 包含图形, 声音, 输入, 网络等模块。
单就图形而论, DirectX 的图形库性能不如 OpenGL
OpenGL稳定,可跨平台使用。但 OpenGL 多需要显卡支持.
----------------------------------------------------------------------------------------------
做windows平台上的游戏,当然是DX,想跨平台,想做科学计算程序,想做CAD,
想做分布计算,想做工业级应用,最好用OpenGL。
当然你要是对COM不感冒,或是想活得轻松一点,还是OpenGL吧。
其实DX之所以是游戏首选平台是因为它速度快,在过去支持OpenGL加速的家用卡
或游戏卡很少,而软件计算很慢。但从TNT2/Voodoo3开始,OpenGL已经是非常理
想的游戏平台了,而在geforce256,savarage2000+为代表的四代卡上OpenGL已经
是极为理想的游戏平台了:够快,够眩!另一方面到DX7这套东西质量已经相当不
错了,与OpenGL差距已经很小了,而且是M$的东西……就看你怎么想了,如果想
学得快,用得爽,调试方便,就选OpenGL,如果已经适应COM体系的思想那当然是
DX自然。
----------------------------------------------------------------------------------------------
1995年至1996年,微软实行了一项新计划,以支持在Windows95上运行游戏,目标是把市场扩展到被任天堂和世嘉控制的游戏领域。然而,微软不想用已经在NT上提供的OpenGL技术。微软收购了Rendermorphics,Ltd.并得到他的被称作RealityLab的3D API。经重新整理,微软发布了新的3D API——Direct3D。
微软,推行Direct3D,冻结OpenGL!
微软当时拒绝了在Window95上支持OpenGL。不止如此,微软采取异常手段收回对OpenGL的MCD驱动接口的支持,以致硬件厂商不得不放弃已经进入最后测试的OpenGL驱动。微软的市场部门开始向游戏开发商、硬件厂商、新闻出版机构推销Direct3D,同时排斥OpenGL。
API之战!
Silicon Graphics和很多OpenGL用户都依赖OpenGL创新且高性能的技术。但很明显微软打算用Direct3D代替OpenGL,尽管D3D有很多问题而且不能像OpenGL那样被硬件厂商扩展。Silicon Graphics决定在1996 SIGGRAPH会议上作一项演示。演示证明OpenGL至少和D3D一样快,从而驳倒微软的市场论调。因为OpenGL是业界公认标准,比D3D功能丰富,而且图像质量要高一些,所以演示在计算机图形和游戏开发社区导致了激烈论战。
游戏开发者要求OpenGL和D3D站在同等地位!
当技术和市场问题暴露,强烈的支持OpenGL行动开始了。Doom的开发者John Carmack声明拒绝D3D,Chris Hecker在游戏开发杂志上发表了两套API的全面分析,移微软应放弃D3D为结论。游戏开发者先后两次向微软递交请愿书。第一次由56名首席游戏开发者要求微软发行OpenGL MCD驱动,但未成功,因为会让OpenGL与D3D竞争。第二次的公开信由254人签名开始,截止时达到1400人。微软的回答仍是重申旧市场立场。尽管请愿者清楚的要求两套API同等竞争以促进发展,微软却以增加D3D的投资、更加减少OpenGL的投资为回应。
Fahrenheit——D3D与OpenGL的合并?
Silicon Graphics,Microsoft, HP,Intel达成协议联合开发下一代3D API——Fahrenheit。但不了了之,因为微软的打算是把OpenGL的技术用到D3D里并且以此之名驱除OpenGL的威胁。(估计DirectX 8 Graphics即是剩下微软独自开发的Fahrenheit,吸收了OpenGL的很多东西。)
OpenGL豪气不减当年!
OpenGL依然是唯一能与微软单独控制的D3D对立的API,尽管Silicon Graphics不再以任何微软不能接受的方式推行OpenGL。游戏开发这是独立的,并且很多关键人物在用OpenGL,因此,硬件厂商正努力提高对其支持。D3D仍不能支持高端图像和专业应用,而OpenGL主宰着这些土地。在开放原码社区,Mesa项目正提供独立于微软的OpenGL驱动。
opengl是一个标准,directx是一个产品
opengl可以通过扩展立即应用显卡的新功能,非常接近硬件
而dx需要ms出新版本才能用
opengl跨平台,dx不跨。
下面转载
directx 是一套多媒体标准接口技术,即使你无法找到最新的显卡驱动程序,但是用它也可以极大的提高显卡的显示性能,因为它拥有一个hal(hardwareabstraction layer,硬件提取)功能,简单的说就是可以直接让游戏、软件程序和硬件来进行数据传输,从而改变了硬件之间兼容性问题。在directx在还有一个hel(hardware emulation layer,硬件模拟)功能,在它的帮助下可以用你机器中现成的硬件设备模拟成为其它的部件,比如你的显卡没有3d硬件加速功能,但是通过directx就可以将其模拟成为带有3d加速功能的显卡,这样在运行游戏的时候就能够获得额外的效果。
opengl是sgi公司开发的,可独立于操作系统和硬件环境的三维图形库,作为一种三维工具软件包在交互式三维图形建模能力和编程方面具有无可比拟的优越性,并已在各种工作站和高档微机中运行。由于其强大的图形功能和跨平台的能力,已成为事实上的标准。 目前,包括microsoft,sgi,ibm,dec,sun,hp等大公司,都采用了opengl作为三维图形标准,许多软件厂商也纷纷以opengl为基础开发出自己的产品。opengl灵活方便地实现了二为和三维的高级图形技术,它具有建模,变换,光线处理,色彩处理,动画以及更先进的能力。更主要的是,它独立于硬件设备,窗口系统和操作系统等。许多计算机公司已经把 opengl集成到各种操作系统和窗口系统中,其中窗口系统有x window系统,ms windows,os/2和mac os等,操作系统包括unix,windows95/nt/98/2000等。这使得一些人相信opengl将是未来的3d图形标准。
Photoshop|
Dreamweaver|
SVG|
WebGL|
Visual Studio|
PowerDesigner|
Eclipse|
Git|
Apache Ant|
Atom|
Composer|
CodeSmith|
Flex|
Gradle|
Maven|
Sublime Text3|
SVN|
Tableau|
Vim|
Chrome开发者工具|
OpenGL|
Unity|
Direct3D|
用户登录
还没有账号?立即注册
用户注册
投稿取消
文章分类: |
|
还能输入300字
上传中....