ANGLE的第一个优势是它是一个开放的标准平台

导读 在谷歌I O 2016上,安卓牛轧糖宣布了对安卓的Vulkan API支持。为了让您耳目一新,这个API可以帮助开发人员更好地控制底层硬件。这种

在谷歌I/O 2016上,安卓牛轧糖宣布了对安卓的Vulkan API支持。为了让您耳目一新,这个API可以帮助开发人员更好地控制底层硬件。这种访问方法可以帮助他们更好地利用每个单元的处理能力和图形功能,并优化游戏,使其尽可能平稳地运行。毫不奇怪,正确的内存分配和线程管理在任何耗电任务中都很重要,比如运行游戏。这是像Xbox One和PlayStation 4这样已经使用了很长时间的流行游戏机,它使开发人员能够低水平地控制设备内部的硬件。

有趣的是,Vulkan是跨平台图形应用的跨平台开放标准。今年早些时候,我们发现了一个线索,安卓Q可以通过Vulkan API渲染用户界面元素。这将是进一步提高系统流畅度的一步。现在,我们收到的信息表明,安卓Q肯定会支持ANGLE,从而简化了2D游戏的开发。

什么是角度?

ANGLE是“几乎本机图形层引擎”的缩写。WebGL的兴起使得有必要提供标准化的解决方案来支持渲染器。OpenGL驱动在Windows平台上不稳定。因此,ANGLE通过将OpenGL代码转换为Direct3D(Windows本身支持的API),将一切提升到了一个新的高度。ANGLE的主要目标是通过将WebGL和OpenGL ES内容转换为平台上可用硬件支持的API,让OpenGL变得易于所有人使用。利用同样的原理,ANGLE会在安卓上把OpenGL代码转换成Vulkan代码,因为前者是政府在操作系统中支持的硬件API。你可能每天都在使用ANGLE,却没有意识到。ANGLE内置于桌面电脑上的谷歌Chrome和Mozilla Firefox网络浏览器中。它用于在这些视窗浏览器中呈现任何图形内容。

OpenGL ES和Vulkan

Khronos集团正试图让ANGLE成为Vulkan上OpenGL的主要渲染器。你们中的许多人可能不认为有必要放弃使用OpenGL来支持Vulkan,但肯定有改进的空间。在这一点上,OpenGL API被认为是一种过时的技术。它于26年前的1992年首次出版。对于你们中的一些人来说,26年可能并不意味着什么,但对于技术发展来说,这是一个天文数字。2016年,Vulkan被引入全球下一级图形API。然而,更新并不总是意味着更好,不是吗?我来解释一下为什么Vulkan比OpenGL/OpenGL ES好很多。

如果你曾经使用过OpenGL ES,你会知道它非常大。该API有300多个扩展,根本不容易使用。Vulkan将所有功能提升到一个全新的水平,提供更小的API和直接的图形控制。它也更容易实现。虽然Vulkan的工作水平比OpenGL ES低,但意味着更多的控制。使用Vulkan,线程和内存管理完全留给游戏开发者,这样就可以充分利用资源。另外,Vulkan的手机版和桌面版差别不大,使得游戏更容易移植。简而言之,Vulkan是一个低级驱动程序,允许您释放特定设备上存在的显卡的全部潜力。

为什么要成角度?

ANGLE的第一个优势是它是一个开放的标准平台。有无数种方法可以为这个项目做出贡献。您可以在设备上测试驱动程序、报告错误、修复错误、帮助开发人员提出解决方案、发送建议、捐赠一些开发资金等等。这些都将提高发展速度。与OpenGL ES相比,下一个优势是可移植性和跨平台支持。ANGLE的本质使得平台和游戏开发者的工作变得更加容易。维护和实现ANGLE比之前的实现要容易得多。OpenGL是如此分散,以至于跟踪错误并在不同的设备上修复它们对开发人员来说是一件痛苦的事情。将所有必要的驱动程序集中到ANGLE中意味着开发人员将能够更容易地实现它们。ANGLE的开发者Jamie Madill向我们确认,在安卓平台上,ANGLE将通过谷歌Play商店接收定期更新。通过内置的第一方市场更新驱动是个不错的主意,因为用户不必每次更新驱动都更新整个系统。此外,开发人员不需要在每次ANGLE更改某些内容时都修改代码。这是一个关于ANGLE如何为安卓游戏开发带来好处的视频。

可以看到,ANGLE对过时的OpenGL ES做了很多改进。安卓Q的第一个开发者预览版已经不远了,所以我们可以拭目以待ANGLE在实践中的表现。根据这个提交,用户将能够从开发者选项中强制所有应用程序使用ANGLE。渲染器支持已经并入安卓派分支进行原始设备制造商测试。你可以从下面的网站和GitHub资源库跟踪ANGLE的发展。