O Android Dynamic Performance Framework (ADPF) ajuda os desenvolvedores a gerenciar de forma proativa a temperatura e o desempenho do dispositivo, permitindo que os jogos interajam com o sistema, recebam insights térmicos (como margem prevista) e influenciem o comportamento. A adaptação inteligente usando o ADPF evita limitações severas e permite uma jogabilidade mais suave e longa. Este guia fornece estratégias práticas para usar o ADPF de maneira eficaz. Ele se concentra no escalonamento granular personalizado, vinculado diretamente às configurações de qualidade específicas do jogo e orientado pelos dados térmicos do ADPF. Ao implementar essas práticas, você pode gerenciar as temperaturas de forma proativa e criar jogos com desempenho melhor por mais tempo, o que resulta em uma experiência mais confiável e agradável para os jogadores.
Personalizar o escalonamento de desempenho
O escalonamento padrão do plug-in ADPF pode segmentar predefinições de mecanismo genéricas, por exemplo, Baixo, Médio e Alto. Se o jogo usa opções exclusivas de qualidade gráfica diferentes desses padrões, as suposições do plug-in não vão corresponder ao seu conteúdo. É necessário personalizar a lógica do ADPF para controlar diretamente as configurações de qualidade específicas do jogo e garantir um gerenciamento térmico eficaz, em vez de depender de padrões incompatíveis. Crie uma lógica de escalonamento detalhada usando dados do ADPF para melhorar os resultados:
- Identifique os principais fatores: crie o perfil do jogo para descobrir quais gráficos ou recursos (sombras, resolução, partículas, efeitos e distância de visualização) afetam o desempenho e o calor.
- Desenvolva etapas granulares: defina ajustes pequenos e incrementais para configurações individuais nas opções de qualidade do seu jogo. Aplique essas mudanças gradualmente com base no feedback térmico do ADPF (por exemplo, usando dados da margem térmica) para aliviar suavemente a pressão no sistema antes que ocorra uma limitação grave.
O vídeo anterior mostra um problema de renderização com ADPF no Unity MegaCity Metro. Como o ADPF ajusta a distância da visualização com base em um intervalo geral do mecanismo de jogo, e não em um intervalo adequado para o conteúdo específico do jogo, a distância fica muito baixa quando o dispositivo aquece, o que causa um problema em que os edifícios não ficam mais visíveis.
Isolar configurações de gráficos
Evite mudanças drásticas na predefinição. O ajuste de configurações gráficas individuais de forma independente proporciona um controle mais refinado e uma experiência mais suave ao responder às condições térmicas. Veja algumas dicas para ajustar as configurações:
- Priorizar o impacto: concentre os esforços de escalonamento nas configurações das opções de qualidade que tenham o impacto térmico ou na performance mais significativo identificado durante a criação de perfil.
- Separar configurações: modifique configurações como sombras, resolução e partículas de forma independente e sequencial, conforme necessário.
- Transições suaves: sempre que possível, faça a transição das configurações visuais gradualmente em alguns frames para não causar estranhamento.
Confira como a Netmarble usou o ADPF para otimizar Game of Thrones: Kingsroad. Eles implementaram o escalonamento dinâmico de resolução e ajustes adaptáveis de frame rate.
Fornecer controle ao usuário
Alguns jogadores preferem visuais consistentes em vez de ajustes dinâmicos. Ofereça uma opção para desativar o escalonamento orientado por ADPF:
- Implementar uma opção: adicione uma configuração claramente rotulada (por exemplo, "Ativar ajuste de desempenho dinâmico") ao menu gráfico.
- Explique a escolha: descreva brevemente que ela permite ajustes automáticos de qualidade para melhorar o desempenho e o gerenciamento térmico.
- Definir comportamento: quando ativada (padrão recomendado), sua lógica personalizada de escalonamento de ADPF é executada. Quando desativado, o jogo usa apenas as configurações selecionadas manualmente pelo usuário e ignora os dados térmicos para escalonamento.
Testar em vários dispositivos
O hardware do Android varia significativamente em termos de capacidade térmica e desempenho. Faça testes rigorosos em diferentes tipos de dispositivos:
- Definir níveis de dispositivo: teste em dispositivos representativos de última geração, de médio porte e simples de vários fabricantes e fornecedores de SoC.
- Teste a resposta térmica: observe como diferentes dispositivos lidam com a carga e a eficácia da lógica do ADPF (e da alternância de usuários) em cada nível.
- Valide metas de desempenho: verifique se o jogo atende às metas de desempenho em cada nível com o ADPF ativo e se comporta de maneira previsível quando desativado.
- Colete feedback: use programas Beta para coletar dados de performance e temperatura de diversos dispositivos reais.
Monitore o desempenho e faça iterações
A implementação do ADPF requer monitoramento e refinamento contínuos para equilibrar desempenho sustentado, limites térmicos e qualidade visual:
- Estabelecer valores de referência e metas: defina um desempenho aceitável (QPS desejado, tempos para a renderização do frame) e meça o comportamento sem a lógica de ADPF primeiro.
- Use ferramentas de criação de perfil: use regularmente o criador de perfil do Android Studio, as ferramentas do fornecedor da GPU e as sobreposições no jogo para rastrear QPS, tempos de renderização de frames e dados térmicos de ADPF durante o jogo.
- Teste e ajuste: teste diferentes estratégias de resposta do ADPF. Ajuste a rapidez e a intensidade das configurações de escalonamento com base na entrada térmica para encontrar o equilíbrio ideal para seu jogo.
- Teste sessões longas: verifique se o teste inclui tempo de reprodução estendido (mais de 15 minutos) para observar o desempenho de carga sustentada e a estabilização térmica com o ADPF ativo.