Se você usa C ou C++ para desenvolver ou personalizar um mecanismo de jogo, os requisitos a seguir são essenciais para integrar o suporte do Android ao seu mecanismo.
- Aproveitar as ferramentas de desenvolvimento do Android
- Criar uma atividade
- Desenhar na tela
- Processar eventos de entrada
- Áudio de saída
- Gerenciar memória
- Testar e aperfeiçoar
- Publicar no Google Play
Os requisitos descritos nesta página não ensinam como desenvolver um mecanismo de jogo do zero, mas a identificar as áreas em que o Android é relativamente único se comparado a outras plataformas.
Aproveitar as ferramentas de desenvolvimento do Android
O Android Studio inclui ferramentas que você pode usar para:
- configurar seu projeto;
- criar, depurar e empacotar seu jogo;
- examinar o desempenho do seu jogo usando criadores de perfis de sistema, CPU e memória;
- inspecionar o conteúdo do pacote de apps ou do pacote do jogo;
- integrar outros recursos do NDK e SDK do Android.
O Android Graphics Inspector pode caracterizar o desempenho de renderização do seu jogo e ajudar você a investigar os detalhes dos frames renderizados usando a criação de perfis de frames.
Se você estiver usando principalmente o Microsoft Visual Studio, poderá usar a Android Game Development Extension (AGDE) para adicionar um destino do Android a projetos existentes. A AGDE é compatível com a depuração nativa no Visual Studio e inclui versões autônomas de muitas das ferramentas de criação de perfil do Android Studio.
Criar uma atividade
Seu jogo precisa criar uma Activity
e interagir com ela. Saiba mais sobre o
ciclo de vida da atividade
no Android para entender quando uma atividade é criada, iniciada, retomada, pausada,
interrompida e destruída.
Leia sobre a biblioteca GameActivity
,
que integra e atende às necessidades relacionadas à Activity
(janela do jogo,
ciclo de vida, renderização, eventos de gerenciamento) de mecanismos de jogos nativos em C ou C++.
Desenhar na tela
Seu jogo precisa desenhar objetos e sprites na tela. Saiba mais sobre a
SurfaceView
do Android e como
configurar elementos gráficos no mecanismo do jogo.
Os dispositivos Android são compatíveis com diferentes taxas de atualização de tela. Saiba mais sobre a renderização em loops de jogo para evitar quedas de frames e falhas de buffers de frame.
Saiba como atingir o ritmo de frames para processar a renderização no OpenGL e no Vulkan. Otimize o frame rate com o Performance Tuner.
Processar eventos de entrada
Um mecanismo de jogo recebe eventos de entrada de várias fontes. Para ter uma experiência de jogo imersiva, aprenda a oferecer compatibilidade com diferentes fontes de entrada do Android:
Áudio de saída
O mecanismo de jogo precisa produzir áudio em diferentes dispositivos e versões do Android. Saiba mais sobre a Oboe, nossa biblioteca de áudio C++ de código aberto para incorporar áudio de alto desempenho ao seu jogo.
Use a Oboe para ter a menor latência, evitar bugs de áudio específicos e selecionar automaticamente a melhor biblioteca nativa disponível, como AAudio ou OpenSL ES.
Gerenciar memória
Em dispositivos Android, o sistema tenta usar o máximo possível de memória do sistema (RAM) e executa várias otimizações de memória para liberar espaço quando necessário. Aprenda a gerenciar o uso da memória para evitar a lentidão ou saída do jogo.
Testar e aperfeiçoar
Um app Android falha sempre que há uma saída inesperada causada por uma exceção ou um sinal não processado. Aprenda a detectar e diagnosticar falhas, ler stack traces, exceções de memória e rede, como usar o logcat e como entender erros específicos de Java e Kotlin.
Publicar no Google Play
Os jogadores fazem o download do seu jogo usando vários dispositivos Android em diferentes países, condições de rede e planos de dados. Aprenda a usar o Google Play para enviar pacotes de apps e de recursos para jogos grandes com os benefícios de uma rede de fornecimento de conteúdo.