目录:
三星展示了Galaxy S7和S7 edge所能提供的一切 - 一旦你能够掌握它们 - 就像以往一样令人印象深刻。 然而,就像这种情况一样,还有一些问题需要回答。 在性能和游戏功能方面,至少有几个问题与三星有关,这些手机是第一款带有Vulkan API的手机。
我们已经看到了Vulkan最终能够在桌面环境中进行演示的演示,但是需要回答的一个重要问题是Vulkan对Galaxy S7和S7边缘所有者的意义。 以下是我们目前所知道的情况,以及我们可以猜到的事情,接下来要感谢一些非常聪明的人与Vulkan以及游戏行业合作。
首先,什么是Vulkan?
询问目前在游戏中使用OpenGL的人是否需要更好的东西,你会得到相同的答案。 是的,现在请。
虽然现有技术可以做很多事情,但跨平台带来游戏体验是一项巨大的挑战。 即使拥有合适的人才和合适的资源,也远非易事。 AMD试图通过他们称为Mantle的技术来解决这个问题,但不是完成该项目,而是继续在DirectX 12上工作.Mantle被捐赠给Khronos Group作为开源工作,以标准化低级计算和渲染多个核心CPU系统。
基本上,Vulkan的目标是通过充分利用您的多核处理器,更容易获得更好的图形性能。 多线程意味着Vulkan可以做OpenGL ES无法做到的事情,最终结果是整体性能提升。 因为它是由几个小组支持的开源项目,所以第一个版本能够同时针对多个平台。 Android是其中一个平台,我们已经看到一些制造商立即开始研究如何为有兴趣构建依赖这些API的开发人员支持Vulkan。
当我们与Sascha Willems坐在一起时,他已经与Vulkan合作了很长一段时间,他指出了使用Vulkan的另一个重要好处。
移植是另一个应该受益的领域。 虽然OpenGL和OpenGL ES有许多共同之处,但你仍然需要进行大量的移植工作,并且通常最终会为它们编写单独的渲染器。 随着Vulkan不再是这样。 唯一不同的是平台特定的代码,例如获取渲染窗口,但是与使用WK(窗口系统集成)的Vulkan相比,OpenGL(ES)已经大大改进了。 特别是像NVIDIA Shield这样提供桌面GPU性能的设备,我想我们会看到更多桌面游戏移植到Android,感谢Vulkan。 例如,在我的Vulkan示例中添加Android支持仅需几分钟,并且在Windows,Linux和Android上呈现代码完全相同
那么为什么三星首先推向市场? 基本上,三星将使用Vulkan向开发商提起诉讼,以创造直接与苹果声称游戏在iPhone上更好的竞争的体验。 通过在其他任何人之前提供此功能,三星能够在公司即将举行的开发人员大会等活动中公开接触开发人员,并获得在Galaxy S7和S7 Edge上发挥最佳性能的精彩游戏。
Vulkan是Metal的答案吗?
现在大多数使用Vulkan的人都很乐意将这个新API与Apple的低级性能框架Metal进行比较。 如果你曾经看过Apple在舞台上展示Metal的方式,或者在iPhone上使用Metal构建的游戏而不是在另一部手机上使用同一款游戏,那么你就会知道重要的差异。 依靠OpenGL ES在手机上进行3D游戏是一种资源匮乏,这意味着您的电池耗尽更快,以获得低劣的体验。 Metal在很大程度上解决了Apple的问题,理论上Vulkan可以为Android做类似的事情。
正如我们从与Giant Spacekat开发主管Brianna Wu的交谈中学到的那样,还有更多内容。 作为熟悉Metal和Vulkan的开发人员,她能够提供一些观点。
将它们称为类似是公平的,因为这两种技术都试图解决同样的问题。 这个OpenGL堆栈是站不住脚的,它是在具有这种单核范例的时代编写的,它只是不再起作用了。 Apple推出Metal对他们来说很有意义。 Apple的不同之处在于他们可以查看驱动程序列表,GPU列表,显示列表,并且他们可以对硬件进行大量控制。 他们可以邀请某人在大会上为这些东西编程,这是一个成功的方法。 Vulkan试图总体上解决同样的问题,但是他们试图实施这个问题要宽泛得多。 要解决这个问题要困难得多,尤其是当没有像苹果这样规模的公司领导这项技术时。
在Android上,我们已经看到了吴正在谈论的例子。 NVIDIA和三星显然已经大幅上升,并以自己的方式宣布支持Vulkan,但在谷歌在所有Android中采用Vulkan之前,它至少要到下一个版本的Android。 即使发生这种情况,它也只会是最新版本的Android向前发展。 快速浏览一下Google最近的版本号,就可以解释为什么这需要一段时间才能成为平台范围的体验增强器。
谷歌的支持不是未来唯一的挑战。 广泛的开发人员采用是任何平台上的重大挑战。 正如Wu在采访中指出的那样,Apple的Metal已经出现了很长一段时间,支持该框架的游戏数量相当低。
这是其中一个真正解决问题的想法,但至少在Apple方面,我们还有很长的路要走才能真正解决这个厚厚的OpenGL堆栈问题。 坦率地说,这是杀死平台。
三星希望直接解决这个问题,并且通过这种方法使用指纹API和多窗口应用程序支持取得了一些有限的成功,但就像Apple和Metal一样,在我们看到任何重要的采用之前还需要一段时间。
Vulkan和VR怎么样?
三星正在寻求成为第一家拥有Vulkan支持的制造商的另一个重要原因是Gear VR。 三星和Oculus在将智能手机VR升级到被动Google Cardboard体验之上做得非常出色,但该平台并非没有性能问题。 由于Oculus和三星都是Khronos集团的成员,因此两家公司都会鼓励开发人员支持这项新技术以继续改进Gear VR体验。 事实上,根据Sascha的说法,VR是Vulkan现在如此重要的一个重要原因。
VR在很大程度上依赖于平稳的体验,帧速率稳定,没有任何特技。 Vulkan在这个领域提供了很多,例如GPU定时器和更好的同步以及多线程。 像微型口吃这样的东西在OpenGL(ES)中很常见,很难修复。 我认为这是Android将受益最多的领域。 Vulkan比OpenGL ES更加明确,并且提供了更多关于例如GPU(和驱动程序)的渲染管道的信息,使其更具预测性,因此对GPU更容易。 这导致驱动程序的工作量减少,并取代了OpenGL的庞大(且难以预测)状态机。
使用Vulkan构建会在Gear VR的背景下产生巨大的变化,对于游戏开发者而言,这是一种在这种相当有限但更易于访问的VR形式中做更多事情的好方法。 作为一名游戏开发商,Wu对三星用Vulkan改进Gear VR的支持再简单不过了。
现在使用Gear VR运行处理器非常困难,它在大约50分钟内运行我的电池,延迟非常糟糕。 如果有一个非常引人注目的案例,像Vulkan这样的开放标准可以在Assembly中下载并真正优化这个图形层,那么就是这样。 我们不会永远盯着玻璃杯,你必须问我们要去哪里。 构建VR和这些3D技术绝对至关重要。 如果三星将成为这里的测试用例,这是最佳选择。 这是迫切需要该技术的地方。
毫无疑问,这将与隔夜业绩增长完全相反,但是Vulkan打开更好体验大门的潜力还不是很明显。 通过Galaxy S7和S7 Edge,这是三星迈向强大的新游戏和VR体验的第一步,也是在竞争中脱颖而出并声称他们在这里的第一步。