feat/105 melhorar performance do minigame comilança maluca
O que esse MR faz?
Este MR implementa melhorias de performance no minigame Comilança Maluca através da ativação do native driver nas animações. As principais mudanças incluem:
- Ativação do
useNativeDriver: true
nas animações do jogo - Implementação de um sistema de rastreamento de posição usando
Animated.Value.addListener()
- Melhoria no sistema de detecção de colisões para trabalhar com o native driver
- Otimização do gerenciamento de recursos com limpeza adequada de listeners
- Remoção do sistema antigo de aproximação de posição via
setInterval
- Implementação de um sistema de gerenciamento de listeners para garantir limpeza adequada de recursos
- Melhoria na precisão da detecção de colisões usando valores reais da animação
- Otimização do sistema de spawn de comidas para melhor performance
- Remoção de código redundante e não utilizado
- Melhoria na gestão de memória com limpeza adequada de recursos após o fim das animações
Como configurar e validar localmente?
- Acesse o minigame Comilança Maluca
- Verifique se as animações estão suaves e sem travamentos
- Teste a detecção de colisões com diferentes tipos de comida:
- Comida boa (ração)
- Comida ruim (bolo e chocolate)
- Corações (vidas)
- Moedas
- Confirme que não há vazamento de memória após jogar várias partidas
- Verifique se o jogo mantém a performance mesmo com muitas comidas na tela
- Teste o jogo em diferentes níveis de dificuldade para garantir que a performance se mantém
Checklist de aceitação do MR
- O código segue os padrões de estilo do projeto
- As mudanças não introduzem novos bugs
- A performance foi melhorada sem comprometer a jogabilidade
- O código está limpo e bem organizado
- Não há código morto ou comentários desnecessários
- As animações funcionam corretamente com o native driver
- A detecção de colisões está precisa e responsiva
- O gerenciamento de memória está otimizado
- A performance se mantém consistente em diferentes níveis de dificuldade
- O sistema de spawn de comidas está funcionando corretamente
- Não há vazamento de memória após múltiplas partidas