Informazioni sulla personalizzazione o sul trasferimento dei motori di gioco

Strumenti, stelle, pianeta Se utilizzi il C o C++ per sviluppare o personalizzare un motore grafico, i seguenti requisiti sono fondamentali per integrare il supporto Android nel motore grafico.

  • Sfrutta gli strumenti di sviluppo Android
  • Creare un'attività
  • Disegna sullo schermo
  • Elabora eventi di input
  • Uscita audio
  • Gestisci ricordo
  • Testa e rifinisci
  • Pubblicare su Google Play

I requisiti descritti in questa pagina non insegnano come sviluppare un motore di gioco da zero, ma piuttosto identificano le aree in cui Android è relativamente unico rispetto ad altre piattaforme.

Sfrutta gli strumenti di sviluppo Android

Android Studio include strumenti che puoi usare per:

  • Configura il progetto
  • Crea, sottoponi a debug e pacchettizza il tuo gioco
  • Esamina le prestazioni del tuo gioco utilizzando i profiler di sistema, CPU e memoria
  • Controlla i contenuti del pacchetto o del bundle dell'applicazione del gioco
  • Integrazione delle funzionalità aggiuntive dell'SDK Android e di NDK

Android Graphics Inspector può caratterizzare le prestazioni di rendering del tuo gioco e aiutarti a esaminare i dettagli dei frame sottoposti a rendering utilizzando la profilazione dei frame.

Se usi principalmente Microsoft Visual Studio, puoi usare l'Android Game Development Extension (AGDE) per aggiungere un target Android ai progetti esistenti. AGDE supporta il debug nativo in Visual Studio e include versioni autonome di molti strumenti di profilazione di Android Studio.

Creare un'attività

Il gioco deve creare e interagire con una Activity. Scopri di più sul ciclo di vita delle attività su Android per capire quando un'attività viene creata, avviata, ripresa, messa in pausa, arrestata ed eliminata.

Scopri di più sulla libreria GameActivity, che integra e soddisfa le esigenze relative a Activity (finestra di gioco, ciclo di vita, rendering, gestione degli eventi) dei motori di gioco nativi C o C++.

Disegna sullo schermo

Il gioco deve disegnare oggetti e sprite sullo schermo. Scopri di più su Android SurfaceView e su come configurare la grafica nel tuo motore di gioco.

I dispositivi Android supportano diverse frequenze di aggiornamento del display. Scopri di più sul rendering nei cicli di gioco per evitare cadute e glitch dei buffer dei frame.

Scopri come ottenere il pacing del frame per un rendering fluido in OpenGL e Vulkan. Ottimizza la frequenza fotogrammi con Performance Tuner.

Elabora eventi di input

Un motore di gioco riceve eventi di input da varie origini. Per un'esperienza di gioco coinvolgente, scopri come supportare diverse origini di input di Android:

Uscita audio

Il motore grafico deve riprodurre l'audio su diversi dispositivi e versioni di Android. Scopri Oboe, la nostra raccolta audio open source C++ per incorporare audio ad alte prestazioni nel tuo gioco.

Usa Oboe per ottenere il minor tempo di latenza, evitare bug audio specifici e selezionare automaticamente la migliore libreria nativa disponibile (come AAudio o OpenSL ES).

Gestisci ricordo

Sui dispositivi Android, il sistema cerca di utilizzare la maggior quantità di memoria di sistema (RAM) ed esegue varie ottimizzazioni della memoria per liberare spazio quando necessario. Scopri come gestire l'utilizzo della memoria per evitare di rallentare o di uscire dal gioco.

Testa e rifinisci

Un'app per Android si arresta in modo anomalo quando si verifica un'uscita imprevista causata da un'eccezione o da un indicatore non gestito. Scopri come rilevare e diagnosticare gli arresti anomali, leggere le analisi dello stack, le eccezioni di memoria e di rete, come utilizzare logcat e come comprendere gli errori specifici di Java e Kotlin.

Pubblicare su Google Play

I giocatori scaricano il tuo gioco su vari dispositivi Android in diversi paesi, condizioni di rete e piani dati. Scopri come usare Google Play per aggiungere app bundle e pacchetti di asset per giochi di grandi dimensioni con i vantaggi di una rete CDN (Content Delivery Network).