Hey, vous auriez pu me dire que mon code était relativement faux ^^
Nouvelle version de test et la forcement ça change tout... : http://jsperf.com/canvas-drawtiles-vs-ca...awbuffer/2
Je monte a 263.xxx op/sec en 1024 avec chrome et 13.xxx en 800? Bizard...
Les autres navigateur restent quand même aux alentours des 6000/10 000 op/sec avec le rendu image sans redésinné les tiles. On vois d'ailleurs bien la différence entre le rendu image et la fonction qui permet de redésinné les tiles.
Pour ce qui est de la rapidité des bibliothèques, c'est plus rapide que tu code natif car la lib utilise forcement un système d'image de rendu.
Il crée le cercle, le stoque, et l'affiche a chaque boucle. Donc forcement un gros gain de temps, plutôt que de nettoyer, crée un nouveau cercle, l'affiché...
La fonction pourrait être repris par du code natif afin d'obtenir des résultat égal je pense. (Je vais essayer de faire le test).
Voilà la résultat des tests : http://jsperf.com/canvas-lib-render/16
On peut voir que le code natif est supérieur aux autres lib. Pourquoi? Par ce que le système actuel recherche uniquement si le rond a bougé ou non. Si celui-ci a bougé, le context "vidé" puis redésinné.
Le canvas est rafraîchi uniquement quand il y a du changement.
Nouvelle version de test et la forcement ça change tout... : http://jsperf.com/canvas-drawtiles-vs-ca...awbuffer/2
Je monte a 263.xxx op/sec en 1024 avec chrome et 13.xxx en 800? Bizard...
Les autres navigateur restent quand même aux alentours des 6000/10 000 op/sec avec le rendu image sans redésinné les tiles. On vois d'ailleurs bien la différence entre le rendu image et la fonction qui permet de redésinné les tiles.
Pour ce qui est de la rapidité des bibliothèques, c'est plus rapide que tu code natif car la lib utilise forcement un système d'image de rendu.
Il crée le cercle, le stoque, et l'affiche a chaque boucle. Donc forcement un gros gain de temps, plutôt que de nettoyer, crée un nouveau cercle, l'affiché...
La fonction pourrait être repris par du code natif afin d'obtenir des résultat égal je pense. (Je vais essayer de faire le test).
Voilà la résultat des tests : http://jsperf.com/canvas-lib-render/16
On peut voir que le code natif est supérieur aux autres lib. Pourquoi? Par ce que le système actuel recherche uniquement si le rond a bougé ou non. Si celui-ci a bougé, le context "vidé" puis redésinné.
Le canvas est rafraîchi uniquement quand il y a du changement.