OpenGL™ 是行业领域中最为
普遍接纳的 2D/3D 图形
API,其自诞生至今已催生了各类计算机平台及设备上的数千优秀应用程序。OpenGL™ 是独立于视窗操做系统或其它操做系统的,亦是网络透明的。在包含CAD、内容创做、能源、娱乐、游戏开发、制造业、制药业及
虚拟现实等行业领域中,OpenGL™ 帮助程序员实如今 PC、
工做站、
超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。
可是,经过一些转换程序,能够很方便地将
AutoCAD、3DS/3DSMAX等3D图形设计软件制做的DXF和3DS模型文件转换成OpenGL的顶点数组。
在OpenGL的基础上还有Open Inventor、Cosmo3D、Optimizer等多种高级图形库,适应不一样应用。其中,Open Inventor应用最为普遍。该软件是基于OpenGL面向对象的工具包,提供建立交互式3D图形应用程序的对象和方法,提供了预约义的对象和用于交互的事件处理模块,建立和编辑3D场景的高级应用程序单元,有打印对象和用其它图形格式交换数据的能力。
OpenGL是一个开放的三维图形软件包,它独立于窗口系统和操做系统,以它为基础开发的应用程序能够十分方便地在各类平台间移植;OpenGL能够与Visual C++紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。它具备七大功能:
1.建模:OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体(球、锥、多面体、茶壶等)以及复杂曲线和曲面绘制函数。
2.变换:OpenGL图形库的变换包括基本变换和
投影变换。基本变换有平移、旋转、缩放、镜像四种变换,投影变换有平行投影(又称正射投影)和透视投 影两种变换。其变换方法有利于减小算法的运行时间,提升三维图形的显示速度。
3.颜色模式设置:OpenGL颜色模式有两种,即RGBA模式和颜色索引(Color Index)。
4.光照和材质设置:OpenGL光有自发光(Emitted Light)、环境光(Ambient Light)、漫反射光(Diffuse Light)和高光(Specular Light)。材质是用光反射率来表示。场景(Scene)中物体最终反映到人眼的颜色是光的红绿蓝份量与材质红绿蓝份量的反射率相乘后造成的颜色。
5:
纹理映射(Texture Mapping)。利用OpenGL纹理映射功能能够十分逼真地表达物体表面细节。
6:
位图显示和图象加强图象功能除了基本的拷贝和像素读写外,还提供融合(Blending)、抗锯齿(反走样)(Antialiasing)和雾(fog)的特殊图象效果处理。以上三条可以使被仿真物更具真实感,加强图形显示的效果。
7:双缓存动画(Double Buffering)双缓存即前台缓存和后台
缓存,简言之,后台缓存计算场景、生成画面,前台缓存显示后台缓存已画好的画面。
此外,利用OpenGL还能实现深度暗示(Depth Cue)、运动模糊(Motion Blur)等特殊效果。从而实现了消隐算法。OpenGL设备运用,目前瑞芯微2918芯片和英伟达芯片Tegra2 就是采用OpenGL 2.0技术进行图形处理,而基于瑞芯微2918芯片方案表明是台电T760和微蜂X7平板电脑所采用到。
OpenAL(Open Audio Library)是
自由软件界的跨平台音效API,由Loki Software,使用在Windows、Linux 系统上,用来音效缓冲和收听者中编码。
OpenAL设计给多通道三维位置音效的特效表现。其 API 风格模仿自
OpenGL。
OpenAL 主要的功能是在来源物体、音效缓冲和收听者中编码。来源物体包含一个指向
缓冲区的指标、声音的速度、位置和方向,以及声音强度。收听者物体包含收听者的速度、位置和方向,以及所有声音的总体增益。缓冲里包含 8 或 16 位元、单声道或立体声 PCM 格式的音效资料,表现引擎进行全部必要的计算,如距离衰减、多普勒效应等。
不一样于 OpenGL 规格,OpenAL 规格包含两个API分支;以实际 OpenAL 函式组成的核心,和 ALC API,ALC 用于管理表现内容、资源使用状况,并将跨平台风格封在其中。还有“ALUT”
程式库,提供高阶“易用”的函式,其定位至关于 OpenGL 的 GLUT。