怎么通过 Unity 使用 Vulkan API & 移动端 Vulkan GPU 大 PK

2020-02-17 11:59:52 +08:00
 unn

本文转自 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 .

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。

Adreno 系列

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

2205 次点击
所在节点    UNITY
4 条回复
unn
2020-02-17 13:12:39 +08:00
欢迎戳上方原文链接下载 Unity 官方技术社区 app,更多资源干货等你来发现。
winterbells
2020-02-17 13:44:53 +08:00
winterbells
2020-02-17 13:45:25 +08:00
UNN 🤣
unn
2020-02-18 10:41:09 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/645196

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX