Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Vulkan

Android es compatible con Vulkan , una API multiplataforma de baja sobrecarga para gráficos 3D de alto rendimiento. Al igual que OpenGL ES (GLES) , Vulkan proporciona herramientas para crear gráficos de alta calidad en tiempo real en aplicaciones. Las ventajas de utilizar Vulkan incluyen reducciones en la sobrecarga de la CPU y compatibilidad con el lenguaje intermedio binario SPIR-V .

Los proveedores de sistemas en chips (SoC), como los proveedores de hardware independientes de GPU (IHV), pueden escribir controladores Vulkan para Android. Los OEM deben integrar estos controladores para dispositivos específicos. Para obtener detalles sobre cómo interactúa un controlador Vulkan con el sistema, cómo se deben instalar las herramientas específicas de la GPU y los requisitos específicos de Android, consulte Implementación de Vulkan.

Los desarrolladores de aplicaciones usan Vulkan para crear aplicaciones que ejecutan comandos en la GPU con una sobrecarga significativamente reducida. Vulkan también proporciona un mapeo más directo de las capacidades que se encuentran en el hardware de gráficos actual en comparación con EGL y GLES, lo que minimiza las oportunidades de errores de controladores y reduce el tiempo de prueba de los desarrolladores.

Para obtener información general sobre Vulkan, consulte la descripción general de Vulkan o consulte la lista de recursos .

Componentes Vulkan

El soporte de Vulkan incluye los siguientes componentes.

Componentes Vulkan

Figura 1. Componentes de Vulkan

Nombre del componente Proveedor Descripción
Capas de validación Vulkan Android (en el NDK) Bibliotecas utilizadas durante el desarrollo de aplicaciones Vulkan para encontrar errores en el uso de la API de Vulkan por parte de una aplicación. Una vez que se encuentran errores de uso de la API, estas bibliotecas deben eliminarse.
Tiempo de ejecución de Vulkan Androide Una biblioteca nativa, libvulkan.so , que proporciona una API Vulkan nativa.

La mayor parte de la funcionalidad de Vulkan Runtime se implementa mediante un controlador proporcionado por el proveedor de GPU. Vulkan Runtime envuelve el controlador, proporciona capacidades de interceptación de API (para depuración y otras herramientas de desarrollo) y gestiona la interacción entre el controlador y las dependencias de la plataforma.
Conductor Vulkan SoC Asigna la API de Vulkan a los comandos de la GPU específicos del hardware y las interacciones con el controlador de gráficos del kernel.

Componentes modificados

BufferQueue y Gralloc son compatibles con Vulkan:

  • BufferQueue. Los valores y métodos de enumeración adicionales en BufferQueue y la interfaz ANativeWindow permiten que Vulkan Runtime se conecte a BufferQueue a través de ANativeWindow .
  • Gralloc. Una interfaz opcional permite a Gralloc descubrir si un formato determinado se puede utilizar para una combinación de productor / consumidor en particular sin asignar un búfer.

Para obtener detalles sobre estos componentes, consulte BufferQueue y gralloc . Para obtener detalles sobre ANativeWindow , consulte EGLSurfaces y OpenGL ES ).

Recursos

Utilice los siguientes recursos para obtener más información sobre Vulkan:

  • Vulkan Loader ( libvulkan.so ) en la platform/frameworks/native/vulkan . Contiene el cargador Vulkan de Android, así como algunas herramientas relacionadas con Vulkan útiles para los desarrolladores de plataformas.
  • Implementación de Vulkan . Destinado a GPU IHV que escriben controladores Vulkan para Android y OEM que integran esos controladores para dispositivos específicos. Describe cómo un controlador Vulkan interactúa con el sistema, cómo se deben instalar las herramientas específicas de la GPU y los requisitos de implementación específicos de Android.
  • Guía de API de gráficos de Vulkan . Incluye información sobre cómo comenzar a usar Vulkan en aplicaciones de Android, la plataforma de pautas de diseño de Vulkan de Android, el uso de compiladores de sombreadores de Vulkan y el uso de capas de validación para ayudar a garantizar la estabilidad en las aplicaciones que usan Vulkan.
  • Noticias de Vulkan . Cubre eventos, parches, tutoriales y más artículos de noticias relacionados con Vulkan.