KineticJS: производительность анимации в Firefox и Chrome

Я запускаю анимацию с помощью Kineticjs, используя модуль Animation. Теперь я заметил довольно большую разницу в производительности между Chrome и Firefox. Посмотрев на частоту кадров, я обнаружил следующие результаты.

     Chrome    Firefox
avg:     50         50
min:     33         20
max:     56         75

Как видите, вариативность частоты кадров для FireFox намного больше. Анимация в Chrome плавная (по крайней мере, достаточно плавная), но анимация в Firefox прерывистая каждую секунду или около того, это происходит, когда частота кадров очень высокая или низкая.

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

Кто-нибудь еще испытывал подобное поведение? И есть ли способ немного сгладить частоту кадров в Firefox?


person Sjiep    schedule 09.04.2014    source источник
comment
Я не знаком с KineticJS, однако, некоторое время используя и Chrome, и Firefox, могу сказать, что универсальный Chrome просто обрабатывает анимацию намного лучше, чем Firefox.   -  person Jon Snow    schedule 09.04.2014
comment
Я это испытал. Я не знаю, в чем проблема с FF, но иногда мне просто нужно перезапустить браузер или мой компьютер, и тогда он снова работает очень хорошо какое-то время.   -  person Yes Barry    schedule 09.04.2014
comment
Согласовано. FF заикается, особенно во время анимации с высоким напряжением.   -  person markE    schedule 09.04.2014
comment
Не имеет отношения к KinecticJS. Это нечто гораздо более общее. Например, временная шкала vis.js или SIMILE выглядит гораздо более нестабильной, когда пользователь перетаскивает ее в FireFox. Вот другой пример: elgreco.digibis.com/en/musobjects /timeline.html?busq_concept=53   -  person Zardoz89    schedule 27.05.2014
comment
Я создаю сайт Parallax с фиксированным холстом на BG и сталкиваюсь с той же, но противоположной проблемой: у Chrome проблема с производительностью, когда firefox работает нормально.   -  person Imran Bughio    schedule 02.06.2014


Ответы (1)


Это может быть связано с различиями в архитектуре вкладок браузера, например, с тем фактом, что в настоящее время Google Chrome использует отдельный процесс для каждой вкладки, поэтому медленный или плохой код на одной вкладке гораздо меньше может повлиять на код на другой. таб. В Firefox вкладки запускаются в одном процессе, поэтому медленный код на одной вкладке может повлиять на другие вкладки.

Это также может быть связано с различиями в производительности браузеров, что означает реализацию DOM и Javascript API, которые вы используете.

есть ли способ немного сгладить частоту кадров в Firefox?

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

Попробуйте использовать браузеры только с одной вкладкой и просмотрите список используемых API, чтобы увидеть, есть ли различия в производительности для них.

person erikvold    schedule 17.06.2015