最广泛采用的图形标准
OpenGL是开发便携式,交互式2D和3D图形应用程序的主要环境。自1992年问世以来,OpenGL已成为业界使用最广泛且受支持最多的2D和3D图形应用程序编程接口(API),将成千上万的应用程序带入各种计算机平台。OpenGL通过合并大量的渲染,纹理映射,特殊效果和其他强大的可视化功能来促进创新并加快应用程序开发。开发人员可以在所有流行的台式机和工作站平台上利用OpenGL的功能,从而确保广泛的应用程序部署。
高视觉质量和性能
从3D动画到CAD到视觉仿真,任何需要最高性能的视觉计算应用程序都可以利用高质量,高性能的OpenGL功能。这些功能使广播,CAD / CAM / CAE,娱乐,医学成像和虚拟现实等不同市场的开发人员能够制作和显示令人难以置信的引人注目的2D和3D图形。
开发者驱动的优势
行业标准
OpenGL体系结构审查委员会是一个独立的联盟,负责指导OpenGL规范。在广泛的行业支持下,OpenGL是唯一真正开放的,与供应商无关的多平台图形标准。
稳定的
OpenGL实现已在多种平台上使用了七年以上。对规范的添加进行了很好的控制,并及时发布了建议的更新,以供开发人员采用更改。向后兼容性要求确保现有应用程序不会过时。
可靠且可移植
所有的OpenGL应用程序都可以在任何符合OpenGL API的硬件上产生一致的视觉显示结果,而与操作系统或窗口系统无关。
不断发展
由于OpenGL具有透彻的前瞻性设计,因此可以通过OpenGL扩展机制通过API来访问新的硬件创新。这样,创新就会及时出现在API中,从而使应用程序开发人员和硬件供应商可以将新功能纳入其正常产品发布周期。
基于可扩展OpenGL API的应用程序可以在从消费电子产品到PC,工作站和超级计算机的系统上运行。结果,应用程序可以扩展到开发人员选择定位的任何类别的计算机。
易于使用的
OpenGL具有直观的设计和逻辑命令,结构良好。高效的OpenGL例程通常导致应用程序的代码行少于组成使用其他图形库或程序包生成的程序的代码行。此外,OpenGL驱动程序封装了有关底层硬件的信息,从而使应用程序开发人员不必设计特定的硬件功能。
文献资料
丰富的关于OpenGL的书籍已经出版,并且有大量的示例代码可供使用,这使得有关OpenGL的信息便宜且易于获得。
OpenGL可视化编程管道OpenGL在图像数据以及几何图元上运行。
简化软件开发,加快上市时间
OpenGL例程简化了图形软件的开发-从渲染简单的几何点,线或填充的多边形到创建最复杂的光照和纹理映射的NURBS曲面。OpenGL使软件开发人员可以访问几何和图像基元,显示列表,模型转换,照明和纹理,抗锯齿,混合以及许多其他功能。
每个符合OpenGL的实现都包括OpenGL功能的完整补充。充分指定的OpenGL标准具有C,C ++,Fortran,Ada和Java的语言绑定。所有许可的OpenGL实现均来自单个规范和语言绑定文档,并且必须通过一组一致性测试。利用OpenGL功能的应用程序可轻松移植到各种平台上,以最大程度提高程序员的工作效率并缩短产品上市时间。
OpenGL状态的所有元素,甚至纹理内存和帧缓冲区的内容,都可以通过OpenGL应用程序获得。OpenGL还支持可视化应用程序,将2D图像视为原始类型,可以像3D几何对象一样进行操作。如上面的OpenGL可视化编程管线图中所示,定义几何图元的图像和顶点通过OpenGL管线传递到帧缓冲区。
随处可用
在所有UNIX®工作站上受支持,并且随每台Windows 95/98/2000 / NT和MacOS PC一起提供,没有其他图形API在更广泛的硬件平台和软件环境中运行。OpenGL可在包括Mac OS,OS / 2,UNIX,Windows 95/98,Windows 2000,Windows NT,Linux,OPENStep和BeOS在内的每个主要操作系统上运行;它还适用于所有主要的窗口系统,包括Win32,MacOS,Presentation Manager和X-Window System。OpenGL可从Ada,C,C ++,Fortran,Python,Perl和Java调用,并提供与网络协议和拓扑的完全独立性。
专为灵活性和差异化而设计:扩展
尽管OpenGL规范定义了特定的图形处理管道,但是平台供应商可以自由定制特定的OpenGL实现方案,以满足独特的系统成本和性能目标。单个调用可以在专用硬件上执行,可以在标准系统CPU上作为软件例程运行,也可以作为专用硬件和软件例程的组合来实现。这种实现方式的灵活性意味着OpenGL硬件加速的范围可以从简单的渲染到完整的几何图形,并且在从低成本PC到高端工作站和超级计算机的所有方面都可以广泛使用。无论OpenGL环境的平台实现如何,应用程序开发人员都可以确保获得一致的显示结果。
使用OpenGL扩展机制,硬件开发人员可以通过开发允许软件开发人员访问其他性能和技术创新的扩展来区分他们的产品。
供应商和供应商组已定义了许多OpenGL扩展以及对相关API的扩展,例如GLU,GLX和WGL。在OpenGL的扩展注册表由SGI维护并包含了所有已知的扩展,写成修改相应的规范文档的规范。该注册表还定义了命名约定,用于创建新扩展名和编写适当的扩展名规范的准则以及其他相关文档。
高级API基础
领先的软件开发人员将OpenGL及其强大的渲染库用作高级API的2D / 3D图形基础。开发人员利用OpenGL的功能来提供高度差异化但得到广泛支持的垂直市场解决方案。例如,Open Inventor提供了跨平台的用户界面和灵活的场景图,使创建OpenGL应用程序变得容易。IRIS Performer <利用OpenGL功能并提供针对苛刻的高帧率市场量身定制的附加功能,例如视觉模拟和虚拟集OpenGL Optimizer是用于实时交互,修改和渲染复杂的基于曲面的模型(例如所发现的模型)的工具包在CAD / CAM和特殊效果创建中。OpenGL Volumizer是用于能源的高级即时模式体积渲染API,医疗和科学市场。OpenGL Shader提供了一个通用接口来支持逼真的视觉效果,凹凸贴图,多个纹理,环境贴图,体积着色以及使用标准OpenGL显卡上的硬件加速功能的无限数量的新效果。
管治
OpenGL体系结构审查委员会(ARB)是成立于1992年的独立财团,负责OpenGL的未来,提出并批准对规范的更改,新版本和一致性测试。在2006年9月,ARB成为Khronos Group联盟下的开放标准API的OpenGL工作组。
持续创新
OpenGL标准正在不断发展。定期进行正式修订,并且不断开发允许应用程序开发人员通过OpenGL访问最新硬件进展的扩展。随着扩展被广泛接受,它们被认为包含在核心OpenGL标准中。此过程允许OpenGL以受控但创新的方式发展。
OpenGL应用程序和游戏
OpenGL是跨所有主要OS平台的3D消费者和专业应用程序的普遍标准。