导航菜单

Vulkan即将登陆macOS和iOS但感谢苹果

导读 2022年1月4日整理发布:Vulkan——来自 Khronos Group的开放、跨平台 GPU API,也是开发 OpenGL 的行业机构——可用于 Windows、Lin
2022-01-04 10:51:32

2022年1月4日整理发布:Vulkan——来自 Khronos Group的开放、跨平台 GPU API,也是开发 OpenGL 的行业机构——可用于 Windows、Linux、Android、Nintendo Switch 和云系统,但它有一个相当大的差距:没有 Apple 的平台支持它。macOS 有旧的、缓慢的 OpenGL 驱动程序,而 iOS 支持 OpenGL ES,这是专为嵌入式系统设计的 OpenGL 子集。迄今为止,Apple 对提供现代 Vulkan API 没有兴趣,而是推出了自己的专有 API Metal。

今天,随着开源、免版税的 MoltenVK 版本的发布,这一差距得到了实质性的填补,MoltenVK 是一种适用于 macOS 和 iOS 的运行时,提供了使用 Metal 实现的 Vulkan API 的几乎完整子集。在 Apache 2 许可下发布的 MoltenVK 将使开发人员能够为 Apple 平台构建他们的 Vulkan 应用程序,允许单个代码库跨越 Windows、Linux、Android、macOS、iOS 等。

Valve 是 MoltenVK 的早期采用者。该公司一直在为Dota 2的 macOS 版本测试 MoltenVK ,迹象非常有希望:该游戏的 Vulkan-on-Metal 版本的帧速率比使用 Apple OpenGL 堆栈的版本高 50%。长期以来,Apple 的 OpenGL 驱动程序一直受到批评,因为它们的性能不佳以及 Apple 拒绝支持最新版本的规范。在Dota的2经验表明,开发者可以通过绕过他们获得巨大的回报。

该版本是应开发人员的要求而发布的;他们想要一个跨平台的 API 来最大化他们的影响力,但也需要能够到达 Apple 的平台。然而,开发人员也告诉 Khronos,他们不想学习第四个API;相反,他们希望该公司可以重新利用一些现有的 API 来实现这一目标。结果是识别出一个通用可移植的 Vulkan 子集,该子集可以在其他 GPU API 之上高效运行。

MoltenVK 被设计为非常薄的层。它经过精心设计,不执行任何重要的数据和函数调用的重新映射或转换,确保其性能可预测且一致,并且其开销很低。少数 Vulkan 功能不可用,但总体而言,可移植子集是可观的。

可移植子集也将很快能够面向另一个平台:DirectX 12。预计在接下来的几个月内,正在开发一个类似的转换层,使 Vulkan 应用程序能够使用 DirectX 12 后端。虽然与 macOS 不同,Windows 确实有来自 GPU 公司的 Vulkan 驱动程序,但通过 Microsoft Store 销售的应用程序只允许使用 DirectX。今天,一些商店应用程序使用 ANGLE(一种运行在 DirectX 之上的 OpenGL ES 实现),以便他们的开发人员可以使用跨平台图形 API。Vulkan 层将为使用高性能、低级 GPU API 的软件启用相同的功能。

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢:

最新文章: