Usa Vulkan per immagini

Vulkan è un'API grafica 3D multipiattaforma moderna progettata per ridurre al minimo l'astrazione tra l'hardware grafico del dispositivo e il gioco. Vulkan è l'API grafica di basso livello principale su Android, che sostituisce OpenGL ES. OpenGL ES è ancora supportato su Android, ma non è più in fase di sviluppo attivo delle funzionalità. Vulkan offre i seguenti vantaggi rispetto a OpenGL ES:

  • Un'architettura più efficiente con un overhead della CPU inferiore nel driver grafico
  • Nuove strategie di ottimizzazione per migliorare le prestazioni della CPU
  • Nuove funzionalità grafiche non disponibili in OpenGL ES, ad esempio API bindless e ray tracing

Vulkan è disponibile su Android a partire da Android 7 (livello API 24). Tutti i dispositivi Android a 64 bit con Android 10 (livello API 29) e versioni successive supportano Vulkan 1.1. L'85% dei dispositivi Android attivi supporta Vulkan. Il profilo di base Android definisce un insieme minimo di funzionalità per i dispositivi compatibili con Vulkan.

Vulkan ti aiuta a creare giochi più belli e performanti. Vulkan libera tutto il potenziale dell'hardware grafico moderno. Vulkan viene utilizzato dal framework di rendering dell'interfaccia utente Android sui dispositivi compatibili. Le versioni attuali dei motori di gioco Unity e Unreal scelgono Vulkan come renderer predefinito sui dispositivi Android compatibili. Il progetto ANGLE implementa un'implementazione conforme dell'API OpenGL ES su Vulkan.

Inizia

C/C++

Per scoprire come utilizzare Vulkan nel motore grafico C/C++ su Android, consulta Iniziare a utilizzare Vulkan su Android.

Inoltre, nella documentazione del Native Development Kit (NDK) è presente una sezione generica su Vulkan per gli sviluppatori non di giochi che tratta i seguenti argomenti:

Motori di gioco

Informazioni su ANGLE

Vulkan è l'interfaccia Android preferita per la GPU. Android 15 e versioni successive includono ANGLE come livello facoltativo per l'esecuzione di OpenGL ES su Vulkan. Il passaggio ad ANGLE standardizza l'implementazione di OpenGL per Android per una migliore compatibilità e, in alcuni casi, prestazioni migliori.

Testa la stabilità e le prestazioni della tua app OpenGL ES con ANGLE utilizzando un'ampia gamma di dispositivi Android 15+ attivando ANGLE per il tuo pacchetto con i seguenti due comandi adb. Sostituisci "package-name" con il pacchetto da testare.

adb shell settings put global angle_gl_driver_selection_pkgs package-name

adb shell settings put global angle_gl_driver_selection_values angle

Queste impostazioni vengono mantenute dopo il riavvio del dispositivo. Per disattivare ANGLE, utilizza i seguenti comandi:

adb shell settings delete global angle_gl_driver_selection_pkgs

adb shell settings delete global angle_gl_driver_selection_values

Attivare l'utilizzo di ANGLE tramite il manifest dell'applicazione

In Android 17 e versioni successive, gli sviluppatori possono aggiungere un flag di metadati nel manifest dell'applicazione per richiedere ANGLE come driver GLES. Non è una garanzia che ANGLE verrà utilizzato, ma un segnale per "preferire" l'utilizzo di ANGLE come driver GLES. Se non è possibile utilizzare ANGLE, verrà utilizzato il driver GLES del fornitore della GPU.

<application android:appCategory="game">
    <meta-data android:name="com.android.graphics.driver.prefer_angle" android:value="true" />
</application>

Roadmap di ANGLE su Vulkan per Android

Roadmap di ANGLE su Vulkan per Android

Segnala un problema con ANGLE

Se hai riscontrato problemi con ANGLE, segnalali inviandoli al nostro Issue Tracker.