![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Mar 2002
Адрес: https://webhamster.ru
Сообщений: 107
|
Вот возник такой вопрос: кто-нибудь замечал, что в Flash зачем-то введена задержка генерации объектов?
Возмем простой пример - создадим ролик с пятью-десятью кадрами. В корне создадим объект с именем "cpb". В каждом кадре напишем такую вещь t1=gettimer(); for (x=1;x<=100;x++) { duplicateMovieClip (_root.cpb, "p"+npix, i); setProperty ("p"+npix, _xscale,x); setProperty ("p"+npix, _yscale,x); npix++; } t2=gettimer(); dt=(t2-t1)+dt; В первом кадре в самом начале добавим строки npix=1; dt=0; А в последнем кадре выведем значение dt на экран. Что делает этот скрипт? Просто замеряет время, которое уходит на создание большого числа копий (дупликатов) объекта и на задание ему некоторых свойств. Время переключения между кадрами сюда не входит. Теперь запустим этот ролик на слабой машине в стиле P-166КГц и на мощном компьютере P4-2,4ГГц. Что увидим? Замеренное время практически совпадает!! И оно довольно велико. То есть как бы вы не старались, получить приличную скорость генерации или изменения свойств объектов не получится. А это значит, что в флеш-проигрывателе есть какя-то задержка, причем скорее всего синхронизированная с таймером. Пример можно посмотреть на http://xi.net.ru/drawboard.php?npage=1 Залитие при начальной инициализации листа белым фоном примерно ~0,3 секунды на горизонтальную линию (генерация 64-х объектов "квадратик"). Та же задержка и если просто поменять свойства у нескольких объектов (нажимаем пиктограмки уменьшить/увеличить) Вопрос! Как обойти это ограничение? Может есть какая недокументированная переменная, или функция, которая регулирует или отключает эту задержку. Или можно еще как-нибудь ускорить ролик? |
![]() |
Часовой пояс GMT +4, время: 05:56. |
|
|
« Предыдущая тема | Следующая тема » |
|
|