Rumah > Soal Jawab > teks badan
Saya tidak boleh menaip kod tertentu Adakah terdapat pakar yang boleh memberikan nasihat berharga
高洛峰2017-07-05 10:58:06
Tukar animasi dalam bingkai kepada animasi dalam masa
Untuk gambar yang tidak perlu ditukar dengan kerap, seperti latar belakang, dsb., sila gunakan kanvas luar skrin
Untuk beberapa butiran, seperti canvas.width, dsb., anda perlu menggunakan width = canvas.width untuk menyimpan nilai
Gunakan pendikit fungsi
Tindakan yang dicetuskan oleh peristiwa tidak seharusnya berdasarkan fungsi terikat Parameter pencetus perlu dihantar ke dalam program dan dilaksanakan melalui gelung permainan. Sebagai contoh: apabila mengklik anak panah kanan, anda hanya perlu memberitahu badan permainan bahawa bergerak ke kanan telah dicetuskan, dan program menentukan cara untuk bergerak.
Optimumkan gelung Secara umumnya, sebab utama program berjalan perlahan adalah ini Terdapat terlalu banyak logik dalaman dan tiada masa untuk memprosesnya dalam gelung unit nombor rawak, dsb., anda boleh lulus Worker digunakan untuk melaksanakannya Untuk beberapa fungsi yang tidak perlu digunakan dengan kerap, sila cuba elakkan memanggilnya Hanya selepas situasi tertentu dicetuskan dan nilai parameter berubah . Sebagai contoh, if(go) dosomething(); hanya beroperasi apabila go adalah benar, yang boleh menjimatkan banyak masa.
Sudah tentu, butiran pengoptimuman khusus perlu ditentukan mengikut kod anda Saya hanya boleh bercakap tentang perkara umum ini, sebenarnya, kebanyakan idea pengoptimuman adalah sama
天蓬老师2017-07-05 10:58:06
Mungkin masalah dengan pendaftaran acara Anda boleh mulakan dengan delegasi acara dan membatalkan acara selepas dom selesai.
Anda boleh menggunakan chrome devtool untuk membuka profil dan menyemak cpu dan memori untuk melihat sama ada sebarang fungsi mengalami kebocoran atau masalah lain.
習慣沉默2017-07-05 10:58:06
Gunakan penyegaran separa kanvas dan bukannya menyegarkan keseluruhan skrin setiap kali anda mengalihkannya