Je travaille avec mon ami sur notre premier jeu Android. L'idée de base est que chaque image du jeu, toute la surface est redessinée (1 grande image bitmap) en 2 étapes:
Le moteur mathématique est en C (JNI) et actuellement tout le dessin est fait en utilisant le package Android.graphics très similaire (puisque c'était l'exemple que j'utilisais) à Lunar Lander. Cela fonctionne mais l'animation est quelque peu saccadée et je peux sentir par la température de mon téléphone qu'il est très occupé. Aurons-nous avantage à passer à OpenGL? Et comme question supplémentaire: quelle serait une bonne façon d'optimiser le mécanisme de dessin (comme Lunar Lander) que nous avons maintenant?
Maintenant que j'ai commencé à travailler avec OpenGL ES, je l'utiliserais également pour les graphiques 2D. Cette manière est la plus flexible et extrêmement rapide (regardez cet exemple de code . Il s'agit du rendu 2D, et là vous pouvez voir la puissance d'OpenGL.
Ce n'est pas la chose la plus simple pour commencer, mais il existe de bons tutoriels - par exemple, this est un très bon.
Ne redessinez pas tout l'écran à chaque fois. C'est ce qui cause votre faible framerate. Utilisez la méthode invalidate pour marquer les zones qui ont changé chaque cadre.