Contrôler les FPS avec requestAnimationFrame
requestAnimationFrame est devenue la méthode préférée pour des animations fluides, mais elle peut parfois s'exécuter à des vitesses variables. Voici une technique pour garantir une fréquence d'images cohérente :
Limiter requestAnimationFrame à un FPS spécifique
Cette méthode utilise une vérification conditionnelle pour exécuter le code d'animation uniquement lorsqu'un FPS spécifié l'intervalle s'est écoulé.
Mise en œuvre :
Initialiser les variables :
Démarrer l'animation :
Boucle d'animation :
Code de dessin :
Exemple de code :
<code class="javascript">var stop = false; var frameCount = 0; var fps, fpsInterval, startTime, now, then, elapsed; function startAnimating(fps) { fpsInterval = 1000 / fps; then = Date.now(); startTime = then; animate(); } function animate() { requestAnimationFrame(animate); now = Date.now(); elapsed = now - then; if (elapsed > fpsInterval) { then = now - (elapsed % fpsInterval); // Put your drawing code here } }</code>
Cette approche garantit que l'animation s'exécute au FPS spécifié, quel que soit le navigateur. vitesse de rendu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!