android vulkan

Vulkan API versions and capabilities

The following table lists Vulkan API versions for several Android releases.
Android VersionVulkan Version
Android 13 Vulkan 1.3
Android 9 Vulkan 1.1
Android 7 Vulkan 1.0

Vulkan 1.3 Functionality Overview

Vulkan 1.3 canonizes a number of previously optional extensions into the Vulkan core functionality. Much of this functionality is included with the intent of increasing control and granularity over the Vulkan programming interface. Single-pass render pass instances no longer need render pass objects or framebuffers. The total number of pipeline state objects can be reduced, and synchronization within the API is overhauled. Vulkan 1.3 has the same hardware requirements as Vulkan 1.2, 1.1, and 1.0, with most of the implementation in the SoC-specific graphics driver, not in the framework.

The most important Vulkan 1.3 features for Android are:

  • Support for single-pass render pass instances
  • Support for immediately terminating a shader invocation
  • Finer granularity over pipeline creation, sharing, and control

Vulkan 1.3 also includes several smaller features and API usability enhancements. All changes made to the core Vulkan API with minor revision 1.3 can be found at Core Revisions (Vulkan 1.3).

Vulkan 1.2 Functionality Overview

Vulkan 1.2 adds a number of features and extensions that simplifies the API surface. This includes a unified Memory Model and additional information that can be queried from a device driver. Vulkan 1.2 has the same hardware requirements as Vulkan 1.0 and 1.1; all of the implementation is in the SoC-specific graphics driver, not the framework.

The most important Vulkan 1.2 feature for Android is support for 8-bit storage.

Vulkan 1.2 also includes several smaller features and API usability enhancements. All changes made to the core Vulkan API with minor revision 1.2 can be found at Core Revisions (Vulkan 1.2).

Vulkan 1.1 Functionality Overview

Vulkan 1.1 includes support for memory/synchronization interop, which enables OEMs to support Vulkan 1.1 on devices. Additionally, memory/synchronization interop enables developers to determine whether Vulkan 1.1 is supported on a device, and use it effectively when it is. Vulkan 1.1 has the same hardware requirements as Vulkan 1.0, but most of the implementation is in the SOC-specific graphics driver, not in the framework.

The most important Vulkan 1.1 features for Android are:

  • Support for importing and exporting memory buffers and synchronization objects from outside Vulkan (for interop with camera, codecs, and GLES)
  • Support for YCbCr formats

Vulkan 1.1 also includes several smaller features and API usability enhancements. All changes made to the core Vulkan API with minor revision 1.1 can be found at Core Revisions (Vulkan 1.1).

Choosing Vulkan Support

Android devices should support the most advanced Vulkan feature set available, provided they support a 64-bit ABI and are not low memory.

Devices that launch with Android 13 and above should support Vulkan 1.3.

Devices that launch through Android 10 should support Vulkan 1.1.

Other devices can optionally support Vulkan 1.3, 1.2, and 1.1.

 

https://source.android.com/docs/core/graphics/implement-vulkan

posted @ 2023-05-18 16:48  fndefbwefsowpvqfx  阅读(58)  评论(0编辑  收藏  举报