可移植性倡议

注意

目前,VK_KHR_portability_subset 扩展规范的临时版本可从 vulkan_beta.h 标头获得。 更多信息可以在新闻稿中找到。

Vulkan 可移植性倡议是 Khronos Group 内部的一项工作,旨在开发资源来定义和发展 Vulkan 功能的子集,该子集可以在所有主要平台上以本机性能级别普遍可用,包括那些当前没有 Vulkan 本机驱动程序服务的平台。 简而言之,此倡议旨在使 Vulkan 在不原生支持 API 的平台(例如 MacOS 和 iOS)上可行。

portability_initiative_overview.png

转换层

分层实现通过使更多应用程序能够在更多平台上运行来对抗行业碎片化,即使在碎片化的行业 API 环境中也是如此。 例如,下图中的第一行显示了如何将 Vulkan 用作移植目标,以将其他 API 引入平台,从而在无需其他内核级驱动程序的情况下实现更多内容。 分层 API 实现已用于在多个平台上成功发布生产应用程序。

该图中的列显示了正在使用的分层项目,以使 API 可在更多平台上使用,即使没有可用的本机驱动程序,也可以为应用程序开发人员提供他们所需的部署灵活性,以使用他们选择的图形 API 进行开发并在多个平台上发布。 该图中的第一列是 Vulkan 可移植性倡议的工作,它使 Vulkan 功能的分层实现能够在不同的平台上实现。

portability_initiative_table.png

MacOS 和 iOS 工具

Khronos 博客,了解关于 macOS 和 iOS 支持的信息

portability_initiative_macos.png

gfx-rs

Mozilla 目前正在帮助推动 gfx-rs 可移植性,以使用 gfx-hal 作为与各种其他 API 接口的方式。

portability_initiative_gfxrs.png