Скорость анимации на холсте зависит от скорости движка js. Есть ли способ сделать анимацию одинаковой во всех браузерах? - PullRequest
1 голос
/ 14 мая 2011

это ссылка на анимацию холста http://www.html5canvastutorials.com/advanced/html5-canvas-linear-motion-animation/

теперь, как и в случае с обычной анимацией js, скорость зависит от скорости работы браузера с js.так что мой вопрос, есть ли у canvas способ привести их всех на один уровень?или уже есть решение для этого?

Ответы [ 2 ]

1 голос
/ 14 мая 2011

Проблема в том, что в Javascript setInterval() не дает надежного времени, особенно если браузер слишком медленно обновляет кадр за выделенное время.

Так что для каждого кадра вам нужновычислите время, прошедшее с предыдущего кадра, и используйте его для обновления вашей позиции.

Вот живой пример:

http://jsfiddle.net/txWqJ/1/

0 голосов
/ 14 мая 2011

Если вы хотите, чтобы холст рендерился с той же скоростью, используйте

setTimeout(doMoreRendering, 1000 / fps)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...