Google 致力于为黑人社区推动种族平等。查看具体举措
Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Vulkan

Android supporta Vulkan , un'API multipiattaforma a basso overhead per grafica 3D ad alte prestazioni. Come OpenGL ES (GLES) , Vulkan fornisce strumenti per la creazione di grafica di alta qualità in tempo reale nelle app. I vantaggi dell'utilizzo di Vulkan includono la riduzione del sovraccarico della CPU e il supporto per il linguaggio SPIR-V Binary Intermediate .

I fornitori di sistemi su chip (SoC) come i fornitori di hardware indipendenti dalla GPU (IHV) possono scrivere driver Vulkan per Android. Gli OEM devono integrare questi driver per dispositivi specifici. Per dettagli su come un driver Vulkan interagisce con il sistema, come dovrebbero essere installati gli strumenti specifici della GPU e requisiti specifici per Android, vedere Implementazione di Vulkan.

Gli sviluppatori di applicazioni utilizzano Vulkan per creare app che eseguono comandi sulla GPU con overhead notevolmente ridotto. Vulkan fornisce anche una mappatura più diretta alle funzionalità presenti nell'hardware grafico corrente rispetto a EGL e GLES, riducendo al minimo le opportunità di bug dei driver e riducendo i tempi di test degli sviluppatori.

Per informazioni generali su Vulkan, fare riferimento alla panoramica Vulkan o consultare l'elenco delle risorse .

Componenti Vulkan

Il supporto Vulkan include i seguenti componenti.

Componenti Vulkan

Figura 1. Componenti Vulkan

Nome del componente Provider Descrizione
Livelli di convalida Vulkan Android (nell'NDK) Librerie utilizzate durante lo sviluppo delle app Vulkan per trovare errori nell'utilizzo dell'API Vulkan da parte di un'app. Dopo aver rilevato errori di utilizzo dell'API, queste librerie dovrebbero essere rimosse.
Vulkan Runtime Android Una libreria nativa, libvulkan.so , che fornisce un'API Vulkan nativa.

La maggior parte delle funzionalità di Vulkan Runtime è implementata da un driver fornito dal fornitore della GPU. Vulkan Runtime esegue il wrapping del driver, fornisce funzionalità di intercettazione API (per il debug e altri strumenti di sviluppo) e gestisce l'interazione tra il driver e le dipendenze della piattaforma.
Vulkan Driver SoC Mappa l'API Vulkan su comandi GPU specifici dell'hardware e interazioni con il driver grafico del kernel.

Componenti modificati

BufferQueue e Gralloc supportano Vulkan:

  • BufferQueue. Valori e metodi aggiuntivi di enum in BufferQueue e nell'interfaccia ANativeWindow consentono a Vulkan Runtime di connettersi a BufferQueue tramite ANativeWindow .
  • Gralloc. Un'interfaccia opzionale consente a Gralloc di scoprire se un dato formato può essere utilizzato per una particolare combinazione produttore / consumatore senza allocare un buffer.

Per i dettagli su questi componenti, vedere BufferQueue e gralloc . Per dettagli su ANativeWindow , vedere EGLSurfaces e OpenGL ES ).

Risorse

Utilizza le seguenti risorse per saperne di più su Vulkan:

  • Vulkan Loader ( libvulkan.so ) su platform/frameworks/native/vulkan . Contiene il caricatore Vulkan di Android e alcuni strumenti relativi a Vulkan utili agli sviluppatori della piattaforma.
  • Implementazione di Vulkan . Destinato a GPU IHV che scrivono driver Vulkan per Android e OEM che integrano tali driver per dispositivi specifici. Descrive come un driver Vulkan interagisce con il sistema, come dovrebbero essere installati gli strumenti specifici della GPU e requisiti di implementazione specifici per Android.
  • Guida alle API grafiche Vulkan . Include informazioni su come iniziare a utilizzare Vulkan nelle app Android, la piattaforma delle linee guida di progettazione Vulkan di Android, l'utilizzo dei compilatori di shader Vulkan e l'utilizzo dei livelli di convalida per garantire la stabilità nelle app che utilizzano Vulkan.
  • Notizie Vulkan . Copre eventi, patch, tutorial e altri articoli di notizie relativi a Vulkan.