J'ai créé un petit projet de jeu en HTML5 en utilisant le moteur Phaser (essayé à la fois 1.1.5 et 1.1.6). Ensuite, pour le porter sur une plate-forme mobile, utilisez Phonegap / Cordova pour Windows Phone 8, Android et iOS.
Dans mon jeu, il y a environ 10 éléments qui s'animent (se déplaçant d'un point a à un point b et une rotation en même temps). Sur iOS et Windows Phone 8, je n'ai rencontré aucun problème.
Mais avec Android, les performances sont inacceptables. D'un autre côté, si je lance mon jeu via le navigateur de l'appareil, il se déroule sans problème. Mais l'APK compilé fonctionne très saccadé et les éléments se déplacent très lentement et de manière vacillante.
J'ai vérifié que l'indicateur d'accélération matérielle Android est défini sur "true" dans le fichier manifeste. J'ai essayé de le changer aussi, mais cela ne reflétait aucun changement dans les performances.
J'ai vérifié la même chose sur Android 4.2 sur l'appareil Samsung S2 et que les performances sont meilleures. Mais sur Asus Nexus Tab 7 (exécutant Android 4.4), c'est très saccadé, tandis que le système d'exploitation et l'appareil sont les derniers. Également vérifié sur un autre appareil exécutant Android 4.3 (Samsung Galaxy Grand Duos) et sur ce point également, les performances ne sont pas bonnes du tout.
Dans mon jeu, j'ai essayé le rendu WebGL / Canvas (le moteur Phaser utilise Pixi.js, qui revient au canevas 2d si WebGL n'est pas pris en charge), mais aucun changement. De même avec easeljs.
Si quelqu'un d'autre est confronté à un problème similaire et peut suggérer un moyen d'obtenir des performances natives. J'ai vérifié les exemples de cocoonjs et bien qu'ils semblent fluides et acceptables, je ne peux pas opter pour cette route.