一篇好文章——《OpenGL发展历程》

本文详细介绍了OpenGL的发展历程,从早期的图形库到现在的高性能图形标准,以及OpenGL在不同版本中的改进和新增功能。文章还探讨了OpenGL的扩展机制,包括如何检查和使用扩展,特别是针对Windows平台的WGL扩展。此外,文章提到了OpenGL在Windows上的实现和硬件加速的原理,以及如何确定OpenGL程序是否使用硬件加速。
摘要由CSDN通过智能技术生成

    自己使用OpenGL已经有一段时间了,当时发现了一些小问题,由于不太重要,同时也没有使用,所以就没有深究。但是最近看到一篇写的不错的文章,把我当时发现的小问题都给解决了。

    下面转过来,同时把一些重点给画出,方便大家解决问题。

在计算机发展初期,人们就开始从事计算机图形的开发,但直到20世纪80年代末、90年代初,三维图形才开始迅速发展。于是各种三维图形工具软件包相继推出,如GLRenderMan等。随着计算机技术的迅速发展,GL已经进一步发展成为OpenGL,现在OpenGL被认为是高性能图形和交互式视景处理的标准。这些三维图形工具软件包有些侧重于使用方便,有些侧重于绘制效果或与应用软件的连接,但没有一种软件包能在交互式三维图形建模能力和编程方便程度上与OpenGL相比拟。

OpenGL(即开放性图形库Open Graphics Library),是一个三维的计算机图形和模型库,最初是美国SGI公司为图形工作站开发的一种功能强大的三维图形机制(或者说是一种图形标准)。它源于SGI公司为其图形工作站开发的IRIS GL,在跨平台移植过程中发展成为OpenGLSGI19927月发布1.0版,后成为工业标准,由成立于1992年的独立财团OpenGL Architecture Review Board (ARB)控制。SGIARB成员以投票方式产生标准,并制成规范文档(Specification)公布,各软硬件厂商据此开发自己系统上的实现。只有通过了ARB规范全部测试的实现才能称为OpenGL199512ARB批准了1.1版本,最新版规范是 2006 8 2 通过的opengl2.1,是自1.0版本后的第七次版本。新版本适应以往早期的版本,也就是2.0, 1.5, 1.4, 1.3, 1.2, 1.1, or 1.0 GL不要任何改变就能在新版本下运行。

OpenGL被设计成独立于硬件,独立于窗口系统,在运行各种操作系统的各种计算机上都可用,并能在网络环境下以客户/服务器模式工作,是专业图形处理、科学计算等高端应用领域的标准图形库。它低端应用上的主要竞争对手是MS-Direct3D,该图形库是以COM接口形式提供的,所以极为复杂,稳定性差,另外微软公司拥有该库版权,目前只在Windows平台上可用。Direct3D的优势在速度上,但现在低价显卡都能提供很好的OpenGL硬件加速,所以做3D图形开发使用Direct3D已没有特别的必要,在专业图形处理特别是高端应用方面目前还没有出现以Direct3D技术为基础的例子,而游戏等低端应用也有转向OpenGL的趋势。

微软在Windows NTOpenGL的支持始于3.51,在Windows9x中的支持始于Win95 OEM Service Release 2Windows下常用的OpenGL库有两种,MS实现的和SGI实现的,MS-OpenGL调用会自动检测是否存在显示卡制造商提供的ICD(Installable Client DeviceDriver)驱动程序,有则调用ICD中的例程,否则使用CPU进行计算,所以能利用显示卡的OpenGL加速能力。对开发者来说使用方法并没有区别,只是有ICD驱动时更快些。SGI的版本是纯软件实现,不能利用硬件加速并且SGI已经在1999年宣布停止支持,但这套图形库便于调试程序,仍有不少开发者使用。

1999SGI宣布与MS合作开发Ferihant,即Windows的下一代图形处理体系,包括DirectXOpenGL的低级图形处理接口和以场景图支持为特点的高级接口,并且就此停止对其在Windows下的OpenGL实现的支持以示决心。此举令世人瞩目,大家都以为Windows图形处理快要过上幸福生活了,然而,不久,SGI宣布中止合作,并撤回派出的科学家,Ferihant基本上夭折。SGI 称终止合作的原因是MS不肯积极合作,光想把SGI 的技术合并进DirectX,但是真正内幕不详。不过以SGI在图形处理界的老大地位来说,还是有几分可信度的,因为MS最初支持OpenGL就不积极。

OpenGL可以运行在当前各种流行操作系统之上,如Mac OSUnixWindows 95/98Windows NT/2000LinuxOPENStepPythonBeOS等。各种流行的编程语言都可以调用OpenGL中的库函数,如C

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值