Questo può sembrare innocuo, ma quando lo fa 1000+ volte a 30 fotogrammi al secondo, si aggiunge. Ho 3 dimensioni di cerchi che disegno, ognuno con il proprio colore di riempimento (RGBA). È più veloce per me disegnarli come immagini una volta e usare drawImage()
con gli URL di dati o per fare arc()
per ognuno di essi?Tela arco() vs drawImage()
Ulteriori informazioni:
- Utilizzando un'unica tela per tutti i cerchi
- Contesto e tela sono memorizzati nella cache
bando completo per l'arco in questo momento sembra
this.scene.context .arc (newLocation, this.y + = this.speed/80, this.distance/2, 0, Math.PI * 2, false);
Se avete già il vostro codice, è possibile controllare quale versione è più veloce a [jsperf] (http://jsperf.com/) – jbalsas
Se finisci per usare il metodo arc() puoi ottimizzare quella linea. Ad esempio, imposta il contesto come variabile locale se in una funzione, o solo come variabile, in modo che "questo" e "scena" non debbano essere cercati e fare i calcoli una volta. Ad esempio var TWOPI = Math.PI * 2 – Richard