Google is committed to advancing racial equity for Black communities. See how.
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Вулкан

Android поддерживает Vulkan , кроссплатформенный API с низкими накладными расходами для высокопроизводительной трехмерной графики. Как и OpenGL ES (GLES) , Vulkan предоставляет инструменты для создания высококачественной графики в реальном времени в приложениях. Преимущества использования Vulkan включают снижение нагрузки на ЦП и поддержку двоичного промежуточного языка SPIR-V .

Поставщики систем на кристалле (SoC), такие как независимые поставщики оборудования для графических процессоров (IHV), могут писать драйверы Vulkan для Android. OEM-производителям необходимо интегрировать эти драйверы для конкретных устройств. Подробные сведения о том, как драйвер Vulkan взаимодействует с системой, как должны быть установлены инструменты для графического процессора, и требования, относящиеся к Android, см. В разделе « Реализация Vulkan».

Разработчики приложений используют Vulkan для создания приложений, которые выполняют команды на графическом процессоре со значительным сокращением накладных расходов. Vulkan также обеспечивает более прямое сопоставление возможностей текущего графического оборудования по сравнению с EGL и GLES, сводя к минимуму возможности для ошибок драйверов и сокращая время тестирования разработчика.

Для получения общей информации о Vulkan см. Обзор Vulkan или список ресурсов .

Компоненты Vulkan

Поддержка Vulkan включает следующие компоненты.

Компоненты Vulkan

Рисунок 1. Компоненты Vulkan

Название компонента Провайдер Описание
Уровни валидации Vulkan Android (в NDK) Библиотеки, используемые во время разработки приложений Vulkan для поиска ошибок в использовании приложением Vulkan API. После обнаружения ошибок использования API эти библиотеки следует удалить.
Вулкан время выполнения Android Собственная библиотека libvulkan.so , которая предоставляет собственный API Vulkan.

Большая часть функциональности Vulkan Runtime реализуется драйвером, предоставляемым поставщиком графического процессора. Vulkan Runtime обертывает драйвер, предоставляет возможности перехвата API (для отладки и других инструментов разработчика) и управляет взаимодействием между драйвером и зависимостями платформы.
Драйвер Вулкан SoC Сопоставляет API Vulkan с аппаратными командами графического процессора и взаимодействует с графическим драйвером ядра.

Модифицированные компоненты

BufferQueue и Gralloc поддерживают Vulkan:

  • BufferQueue. Дополнительные значения и методы перечисления в BufferQueue и интерфейсе ANativeWindow позволяют Vulkan Runtime подключаться к BufferQueue через ANativeWindow .
  • Граллок. Необязательный интерфейс позволяет Gralloc определять, можно ли использовать данный формат для конкретной комбинации производитель / потребитель без выделения буфера.

Подробнее об этих компонентах см. В BufferQueue и gralloc . Подробнее об ANativeWindow см. EGLSurfaces и OpenGL ES ).

Ресурсы

Чтобы узнать больше о Vulkan, воспользуйтесь следующими ресурсами:

  • Загрузчик Vulkan ( libvulkan.so ) на platform/frameworks/native/vulkan . Содержит загрузчик Vulkan для Android, а также некоторые связанные с Vulkan инструменты, полезные для разработчиков платформы.
  • Внедрение Vulkan . Предназначен для графических процессоров IHV, пишущих драйверы Vulkan для Android, и OEM-производителей, интегрирующих эти драйверы для определенных устройств. В нем описывается, как драйвер Vulkan взаимодействует с системой, как должны быть установлены инструменты для графического процессора, а также требования к реализации для Android.
  • Руководство по Vulkan Graphics API . Включает информацию о том, как приступить к использованию Vulkan в приложениях Android, платформе руководств по проектированию Android Vulkan, использованию компиляторов шейдеров Vulkan и использованию уровней проверки для обеспечения стабильности в приложениях, использующих Vulkan.
  • Новости Вулкан . Охватывает события, патчи, руководства и другие новостные статьи, связанные с Vulkan.