PDA

Просмотр полной версии : в ишаке медленнее программная анимация


kilotsun
30.11.2009, 15:26
Доброго всем времени суток!!
Я начинающий ас-кодер, делаю фотогалерею на ас3 в работе вот она http://www.sunerzha.com/photogallery/.
Не считая некоторых недочетов - она стабильно работает, но вылез баг в ишаке :(.
Анимация движения в IE реально намного медленнее чем в ФФ и опере.
Причину абсолютно не могу понять.
Для анимации написан свой класс: он по таймеру в 3 мс перемещает объект на пиксель,
вроде тоже нормально работает, хотя, понятное дело, класс далек от универсальности.
От использования твина оказался из-за того что он реально поглючивает -
не доводит анимацию до конца, ну и соответственно событие завершения движения не возникает.

в общем, ай нид хэлп!!!!

kackbip
30.11.2009, 15:39
Какой смысл передвигать объект чаще смены кадров?
От использования твина оказался из-за того что он реально поглючивает -
не доводит анимацию до конца, ну и соответственно событие завершения движения не возникает.
Это возникает из-за того, что его съедает сборщик мусора. Для избежания данной проблемы можно, к примеру, создать массив, в который добавлять текущие Tween'ы, и удалять их оттуда, когда движение заканчивается. Вы в курсе как работает сборщик мусора?

Кстати, еще напрягает, что пока не завершится волнение превьюшки, не начинается подгрузка полной фотографии.

kilotsun
30.11.2009, 15:54
Если честно, для меня ас сложен в плане понимания, наверное как и всем кто приходит к ас из пхп, си++ и тп.
Да, я конечно же знаю что такое сборщик мусора, но принципы работы я его не знаю, :) но похоже Вы правы, по логике так и должно быть.
А на счет галереи, я её буду перерабатывать по мере увеличения опыта.
Спасибо за помощь

Добавлено через 3 минуты
Кстати, еще вопрос: может быть Вы подскажете в чем может быть причина мигания в левом верхнем углу при частом овэре на превьшках? Там быстро мигают другие картинки

VVall
30.11.2009, 15:59
Точность таймеров во Flash заметно хуже, чем 3 мс, даже погрешность выше этого значения. И точность разная в разных браузерах. Максимальная частота обновления окна Flash-ролика в разных браузерах тоже разная, обычно ~66 и 100 раз в секунду.

kilotsun
01.12.2009, 10:12
Спасибо, проблема была связана со сборщиком мусора, он удалял объект до завершения анимации. Странно, конечно, что ни в одной документации не видел пояснения по этому поводу, а может просто не обратил внимание.