Ошибка Opera Out Of Memory с Canvas/кинетикой

У меня есть скрипт, который я создал с помощью requestAnimationFrmae.

Код на pastebin здесь

В хроме работает прекрасно. Гладкая и идеальная. Однако в FF, Opera и Safari он ужасно дергается.

У меня есть оператор, который работает, если браузер может обрабатывать requestAnimationFrame и если он не может вернуться к timeOut()

Может ли кто-нибудь сказать мне / понять, почему это так плохо / отрывисто. И как я могу улучшить производительность.

Спасибо.


person Jay Smith    schedule 06.03.2013    source источник


Ответы (1)


  setTimeout(function(){

       requestAnimationFrame(Animate);

       },1000/16.5);

мне кажется просто неправильным. Это должно быть просто

  requestAnimationFrame(Animate);

и он должен быть помещен в Animate, а не в runAnimation, который повторно вызывается в течение одного кадра анимации (вызов Animate). Кстати, прокладка requestAnimationFrame с setTimeout имеет очень амбициозную частоту кадров 105 кадров в секунду, 60 должно быть достаточно.

person Bergi    schedule 06.03.2013