怎么通过Unity使用Vulkan API & 移动端Vulka
本文转自Unity Connect博主 梦想在路上的LPP
逢人皆言Vulkan好,到底好在哪里?如何在Unity 工程中使用Vulkan API?支持Vukan的GPU都有哪些?我的手机支持Vulkan吗?为什么感觉游戏厂家都“不积极”呢,适配Vulkan的游戏不多呢?.......在这篇文章中一起找答案吧。
正如并行性和多线程编程为多核CPU的性能提升铺平了道路一样,Vulkan也着手打造一个多线程、跨平台的GPU编程和高性能渲染的未来。自面世以来Vulkan因为高性能和低开销而广受关注,目前已有不少支持Vulkan的游戏与应用如《Doom》《Dota2》、《王者荣耀》、《使命召唤》、《天涯明月刀》等。
下面以王者荣耀为例说明Vulkan的高性能和低开销优势。Talk is Cheap ,Shown me the data .
王者荣耀vulkan版1.特效全开,画面精美,人物动作行云流水,玩游戏也是一场视觉享受(貂蝉连续放大招帧率稳定在60FPS)
2.持续高帧,打团要稳,胜利在望
3.更低功耗,更低发热,延长手机续航时间
Unity作为一个移动平台最为成功的游戏开发平台,从2016年12月,Unity Technologies表示Unity游戏引擎5.6版将支持Vulkan API;到2017年3月,Unity 5.6提供正式支持Vulkan API,再到Unity 2019.2增加了许多Vulkan补丁,Unity一直在提高游戏画质与提升游戏性能的道路上奋力前行。
如何在项目中使用Vulkan API进行构建
1.从Unity文件菜单中选择“Build Settings”
2.从构建设置面板中选择“Player Settings…”
3.单击展开“Other Settings”面板。
4.取消选中“Windows的自动图形API”复选框
5.单击“+”号,选择Vulkan将其添加到活动 API列表中
6.使用“-”号从活动列表中删除其他API
该项目现在将使用Vulkan API进行构建。
移动端Vulkan GPU 大PK
由于Vulkan诞生的时间不长,因此当下市面上GPU并不能很好的支持,为了使大家更好的了解这方面的情况,我简要介绍移动端目前能够很好的支持Vulkan的GPU。
Android平台下,由于没有统一的硬件标准,导致各个厂家各个型号智能手机、平板电脑的硬件配置大相径庭。目前应用在Android移动平台的GPU主要由4家公司提供,分别为Imagination、ARM、高通、NVIDIA。我将对这四家公司提供的支持Vulkan的GPU进行简要介绍。如下:
PowerVR Rogue
PowerVR Rogue 是由Imagination于2010年发布的PowerVR架构,支持Vulkan需要的PowerVR 6以及更新的系列,具体情况如下。
PowerVR Series7XT 系列是中高端图形处理器,主要型号有PowerVR GT7200、PowerVR GT7400、PowerVR GT7600、PowerVR GT7800、PowerVR GT7900等。Series7XT 支持HDR渲染、4K纹理、物理着色等。Android设备中使用PowerVR架构的GPU的代表性产品是魅族的PRO7 Plus,这款手机搭载了Helio X30 处理器,集成了PowerVR 7XTP GPU。
Mail 系列
Mail 系列GPU是ARM设计出品的,其中Midgard1-4可以全平台支持Vulkan API。目前主要型号为Mail-G71、Mail-G72、Mail-T760、Mail-T820、Mail-T830、Mail-T860、Mail-T880等
Mail-G71基于Bifrost架构,拥有非常强大的移动图像处理能力,大大降低了设计功率,以提高同等核心面积下的图形处理性。三星Galaxy S8 系列手机采用的就是Mail-G71图形处理器而搭载麒麟970处理器的华为P20, GPU使用的则是Mail-G72。
华为P20和三星Galaxy S8Adreno 系列
Adreno 系列由高通推出,被广泛用于高通的Snapdragon平台上。其中,高通Adreno 400和Adreno500 系列全平台支持Vulkan API。目前应用较为广泛3款Adreno 系列GPU分别是Adreno 430、Adreno 530、Adreno 540。
Adreno 540与Adreno 530 相比,将频率提高了710MHz,提升近14%的性能。再加上其他方面的各种优化,Adreno 540的性能比Adreno 530提升达25%,小米6搭载的骁龙835处理器就集成了Adreno 540的图形处理器。
GeForce ULV系列
GeForce ULV系列由NVIDIA推出,被广泛应用于Tegra平台上。目前支持Vulkan API的型号为Tegra x1等。从性能上来看,NVIDIA的GeForce系列芯片在整体上非常的优秀,特别在高清视频录制和播放方面以及大型3D游戏方面有着不错的表现。
NVIDIA推出的Shield系列游戏机以及平板都是搭载Tegra x1,而大名鼎鼎的任天堂Switch也是采用的Tegra x1改进版。
写到这里相信已经有很多的小伙伴有个疑问:Vulkan可以大幅度提高渲染性能,提高游戏体验,那为什么感觉游戏厂家都“不积极”呢,适配Vulkan的游戏不多呢???
一句话概括就是,时间就是金钱,效率就是生命。
尤其在游戏行业。Vulkan是个新东西,开发团队学习它需要时间,而且即使使用了Vulkan API,但是不花精力优化的话,效果可能比之前更差(王者荣耀Vulkan版也于今年已经不维护了),游戏需按照机型进行适配。而这些需要平台,手机厂家和游戏厂商一起参与优化,而且要都有意愿,缺一不可。
原文链接:https://connect.unity.com/p/zen-yao-tong-guo-unityshi-yong-vulkan-api-vulkan-gpu-da-pk?app=true
欢迎戳上方原文链接下载Unity官方技术社区app,更多资源干货等你来发现。