很多人在刚听到低开销图形API的时候似乎都激动不起来,但是苹果已经在去年的iOS 8上推出了Metal,并计划于今秋将之推送至Mac OS X EI Capitan。此外,刚刚发布的Windows 10系统中也包括了DirectX 12,Windows Phone则会在今年晚些时候迎来更新。而今天,Google也宣布了Android将支持Vulkan的消息。
致力于开放标准的Khronos Group是由其成员提供基金支持的行业协会,除了OpenGL和OpenGL ES之外,Vulkan是继两者之后的最新低开销API。
与其它API相比,Vulkan承诺会提供对GPU更直接的访问以改善性能,因此开发者将能够自行管理内存和多线程,而不是将此类决策交给驱动——在让他们做得更多的同时,也极大地提升了灵活性。
它与OpenGL相比的不同点在于可用于任何人,并且理论上可被附加到任何主流操作系统上。当然,与Metal和DirectX 12一样,Vulkan需要操作系统和硬件的双重支持。
Vulkan目前已兼容支持OpenGL ES3.1的任何GPU——包括高通的Adreno 400系列、Imagination Technologies的PowerVR 6系及新型号、Nvidia Tegra K1及新型号、以及ARM的600 / 700 / 800系列Mali GPU——几乎涵盖了2014年年底发布至今的所有高端手机/平板产品。
Vulkan API将在今年晚些时候才会最终敲定,Google的帖子未提到Android M是否会加入对它的支持,所以我们有可能要等到一个大版本。尽管有些变动可通过Play商店或Google Play服务升级,但依照历史来看,新的API总是需要一个新的Android版本来尝鲜的。
最后,Google表示会在引入Vulkan后继续支持OpenGL ES,所以开发者仍然能够愉快地使用老款API来工作。
Khronos Group刚刚宣布了OpenGL ES的3.0版本,而在Android 5.0中加入的OpenGL ES Android扩展包则包括了如下功能:
• 几何形状与镶嵌着色器,GPU可有效处理复杂场景;
• 可对渲染目标执行更高精度的浮点运算操作,并提升了灵活性;
• ASTC压缩技术可减少纹理运算时的内存占用和带宽需求;
• 增强混合与复杂合成,可处理多种颜色的附件;
• 高级纹理质感,如缓存、多种2D和立方贴图阵列;
• 调试更简单、代码开发更健壮、安全执行。
最后,Khronos Group表示,OpenGL ES 3.2兼容性扩展“使得人们可以通过桌面OpenGL来开发移动应用程序”。随着移动GPU的日益进步,OpenGL和移动端OpenGL ES标准已经变得更加紧密,这最终可让桌面项目移植到移动设备上变得更加简单。
[编译自:Ars Technica]
未经允许不得转载:陈丹的博客 » Google宣布支持Vulkan作为Android的低开销图形API