上天派了Vulkan快拯救手机游戏吧!820支持vulkan

2018/3/265299 浏览综合
希望官方后期的更新包,换用vulkan,其他手机支持不支持vulkan按照820发布时间向后推
上天派来了Vulkan,快去拯救手机游戏吧!
TapTap
Vulkan是啥?Vulkan最早是由科纳斯组织(Khronos Group)在2015年的游戏开发者大会(GDC)上提出来的,这是底层跨平台的3D图像及运算应用程序接口(API),最初被称为“次世代OpenGL方案”(next generation OpenGL initiative)。Vulkan针对高性能实时3D图像应用程序运作,包括游戏与互动媒体。其特性是在较低的CPU使用率下实现较高的性能,这一点与Direct3D 12以及Mantle类似。除了较低的CPU使用率这点优势外,Vulkan尤其在多CPU内核分发工作上能够实现更好的效果。 想了解更多看看这个脑补《Vulkan:一款API适用于所有平台》 不管爱听不爱听,其实现在大型的手机游戏真心没法玩,除了画面不忍直视以外,玩一会儿手机就烫了,烫了就卡,说起来都是泪。要说现在的手机GPU都已经挺强的了,为什么还会是这个样子? 我们先看一下这张图: 这是U君用某手机的数据,我们看到蓝色的是帧率,红色的是处理器温度,大家有空去看看文章,就知道帧率越跑越低的原因是CPU温控。而CPU为什么会温控,其实就是因为CPU负载重导致处理器温度飙升造成触发温控。 所以说手机跑大型游戏体验差的根本症结并非GPU的强弱问题,起码在高端手机芯片上GPU性能不是瓶颈,真正的瓶颈在于CPU。其实这个问题在PC上一样,当年笔者为了能打《战地》,花了一千多块升级了一块儿显卡,结果游戏帧率一点儿没提升,咨询了好多人得知是CPU太老,不得已换了CPU游戏立刻能打了。手机相比PC情况还要更复杂一些,主要是有个散热的问题,还不是配置一个更强的CPU就行的,所以手机上要真正解决这个问题的出路只有一条——降低3D绘制时CPU的负载。 那么这里就不得不提到CPU负载高的元凶OpenGL了。OpenGL大家多少应该听过吧,在最早电脑上打游戏的时候,都是基于OpenGL的,后来微软出了Direct3D,大部分游戏都切过来了。这是一个老掉牙的行业标准,是在1992年确立的,大家想想看,那个时候还没有手机呢,电脑也就是286的水平。而就这么个老标准,却在手机上用了二十多年,虽然也有演进,但是根本上还是原来的框子。那个时候哪里有多核GPU,多核CPU啊,所以设计上根本没有考虑并行化,所以我们现在的多少多少核GPU和CPU在它面前就是白瞎的。当然这个问题行业大佬们也清楚得很,但是涉及到各方利益的原因迟迟没有推出真正改变的新标准。但是,随着手机处理器性能的高速发展,无论是用户还是厂商对此都怨声载道。于是,OpenGL的官方组织终于坐不住了,Khronos在今年三月份推出了新一代API规范Vulkan,采用跨平台设计,但最重要的贡献是大幅降低绘制命令开销(draw call overhead),改善多线程性能,渲染性能更快。 一时间行业内的人都欢呼雀跃,其实最应该兴奋的是广大手机用户,因为这意味着大家手里的手机,终于可以真正发挥出GPU的性能了,终于可以得到更加流畅和漂亮的渲染效果。那么Vulkan对比OpenGL带来的提升到底有多大呢,借用网上的一篇对比文章可以让大家有个感性认识,我们可以看到帧率上的巨大差异,而同时CPU的占用也明显好很多。(为什么要借用而不自己测呢?下面告诉大家原因) 所以说,Vulkan的出现,极大地改善了图形绘制时对CPU的依赖,下面这个说明就更加清楚了,我们看到,中间粉色部分的大量工作被Vulkan打包进去了,也就是说不再需要应用或者游戏去做那些操作,要知道这每一个操作都是需要CPU完成的。 实际上Vulkan带来的好处还不止这些,由于它对于GPU并行度的提升,极大的提高了GPU的工作效率,过去无论4核还是8核的GPU,大家赶紧用起来性能差不多,那是因为被CPU限制住了。而Vulkan的应用让高配置的GPU终于可以发挥它们的全部性能了。 但是问题来了,Vulkan这么好,我们什么时候能用上呢?这是一个悲伤的问题,因为一个标准的应用乃至普及,是需要一个过程的。Vulkan的真正商用化,需要几个条件,首先标准要有,其次手机芯片GPU的NDK要能支持,当然OS的支持也是至关重要的,然后是游戏引擎的支持,最后是应用和游戏的支持。这在被OpenGL霸占多年的手机图形计算领域,要想切到一个新标准还需要时日。好消息是,三星S7发布时宣称了对Vulkan的支持,可惜它只是一个演示,并非完整支持标准的Vulkan,而且Android的版本也不支持,也就是说并没有真正的支持。今年6月,世界主流游戏引擎Unreal的新版引入了Vulkan特性。8月,Google发布的Android N版本也正式开始支持Vulkan。可惜目前的主流手机芯片厂商无论是高通、海思还是三星都还没有推出支持Android N 完整Vulkan特性的芯片平台,大家都在焦急的等待。这也是本文还没办法自己实测的原因。 不管怎么说,我有充分地理由相信,Vulkan已经箭在弦上,让我们先放下手上的游戏吧,等着Vulkan给我们带来真正酣畅淋漓的体验。
18
6
29