最近接触了Android OpenGL ES 和 OpenCL ES,然后就很想知道除了这两个之外到底还有几个Open系列的API集。搜集的结果如下(纯为自己科普):
1. OpenGL(OpenGraphics Library)
OpenGL是业界最广泛采用的二维和三维图形API,将成千上万的应用程序应用到各种各样的计算机平台上。它是独立于窗口系统和操作系统以及网络透明。OpenGL使软件开发人员为PC,工作站和超级计算机硬件创造高性能,视觉上引人注目的图形软件应用程序,在市场,如CAD,内容创作,能源,娱乐,游戏开发,制造,医疗和虚拟现实。OpenGL公开了最新图形硬件的所有功能。
2. OpenCL(OpenComputing Language)
开放运算语言opencl并行计算,面向异构系统通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,便于软件开发人员为高性能计算服务器、桌面计算系统、手持设备编写高效轻便的代码,而且广泛适用于多核心处理器(CPU)、图形处理器(GPU)、Cell类型架构以及数字信号处理器(DSP)等其他并行处理器,在游戏、娱乐、科研、医疗等各种领域都有广阔的发展前景。
3. OpenAL(Open AudioLibrary)
是自由软件界的跨平台音效API。它设计给多通道三维位置音效的特效表现。其 API 风格模仿自OpenGL。
4. OpenGL ES (OpenGL for EmbeddedSystems)
嵌入式系统采用的OpenGL集,是 OpenGL 三维图形 API 的子集,针对手机、PDA和游戏主机等嵌入式设备而设计。该API由Khronos集团定义推广,Khronos是一个图形软硬件行业协会,该协会主要关注图形和多媒体方面的开放标准。
5. OpenVG(Vector GraphicsAcceleration)
矢量图形设备加速器,OpenVG是免费的,跨平台的API,提供了一个低级别的硬件加速接口的矢量图形库如Flash和SVG。OpenVG是主要针对手持设备,需要移动加速引人注目的用户界面和小屏幕设备上的文本高质量的矢量图形,使硬件加速,在非常低的功率水平提供流畅的交互性能。