![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2001
Адрес: Шинель
Сообщений: 99
|
ПРЕДИСЛОВИЕ: Как показал небольшой тест (хотя это очевидно и без всякого теста), .swf с меньшим fps требует меньших ресурсов в состоянии простоя. Отсюда возникает вполне обоснованное желание (по крайней мере для поставленной мною задачи) поставить частоту = 1fps и обновлять экран только когда это действительно нужно. Такой подход крайне выгоден в целях экономии ресурсов.
РЕШЕНИЕ (НАИБОЛЕЕ ОЧЕВИДНОЕ, НО, К СОЖАЛЕНИЮ, НЕВЕРОЯТНОЕ, ПРИМЕНИТЕЛЬНО К МОЕЙ ЗАДАЧЕ): из всех средств, предлагаемых для обновления экрана вне зависимости от частоты, я нашел только функцию updateAfterEvent(). Кстати, в справке написано не совсем правильно, а, точнее, неправильно совсем, что она принимает аргументы mouseMove, mouseDown, mouseUp, keyDown и keyUp. То есть, якобы, вот в таком виде должно работать: updateAfterEvent(mouseMove). На самом деле, эта функция НЕ ПРИНИМАЕТ НИКАКИХ АРГУМЕНТОВ*, а работает в таком виде: onClipEvent (mouseMove) { //или любое другое из выше перечисленных событий updateAfterEvent(); } Пользуясь ею, можно прекрасно реализовать drag и всяческий скроллинг, но как же быть, когда возникает необходимость адекватно, без дискретных переходов от кадра к кадру, показать банальную анимацию на том же рабочем столе в отсутствие выше перечисленных событий? Или как эмулировать одно из них на протяжение всего показа мувика? Конкретней: как в полном состоянии покоя клавы и мыши заставить обновляться экран? Ответ на этот вопрос, на мой взгляд, будет иметь огромную пользу для всех флешеров. Ну конечно, если этот ответ не в стиле неаргументированной демонстрации собственного громадного интеллекта перед Вашим покорным слугой: «Смотри инструкцию! Это очевидно Уатсон» или: «Извращенец! –Программируй на Васике!» Заранее благодарю, Ваш Акакий. _______________ *- «ActionScript.Подробное руководство», Колин Мук. |
|
|||||
|
Открою страшную тайну: ролик хоть со 120 fps может вообще не требовать никаких ресурсов в состоянии простоя. Для этого надо просто отказаться от onEnterFrame (или использовать его с максимальной осторожностью), и аккуратно останавливать все таймлайны (по крайней мере те, в которых есть сложная анимация или сложные вычисления). Проверено на практике на весьма нехилом проекте.
__________________
Work not wolf - in forest no run |
|
|||||
|
Регистрация: Nov 2001
Адрес: Шинель
Сообщений: 99
|
Неправда Ваша. Проверить легко: создайте два абсолютно пустых swf один на 1 fps и другой на 120, откройте в плеере и посмотрите загрузку процессора.
С уважением, Ваш Акакий. |
|
|||||
|
Ясен пень, таймлайн-то крутится. А вот ежель stop() ему сказать - никакой разницы меж тем и этим не будет.
__________________
Work not wolf - in forest no run |
|
|||||
|
Нет, стоп. Прогнали Вы, любезнейший, да и меня в грех ввели.
Абсолютно пустой ролик загружает процессор ровно на 0%, будь там 120 кадров в секунду или 0.01.
__________________
Work not wolf - in forest no run |
|
|||||
|
Регистрация: Nov 2001
Адрес: Шинель
Сообщений: 99
|
Извините, что выразился неполно: «в состоянии покоя» - это и подразумевало stop(), именно в таком состоянии проводился замер, Вы можете попробовать сами. Лично у меня пустой клип 1 fps в режиме стопа в полный экран требует 1-2% ресурсов процессора, а аналогичный 120 fps – 12-14%. Так что всё-таки неправда Ваша
![]() С уважением, Ваш Акакий. PS: ничо я не прогнал, файлы прилагаю. |
|
|||||
|
некрофил
Регистрация: Mar 2002
Адрес: ...по колено в кровище...
Сообщений: 2,292
|
2AA
Поменяй камень, маму и память...
__________________
...убивать людей не удовольствия ради, но для еды. |
|
|||||
|
Регистрация: Nov 2001
Адрес: Шинель
Сообщений: 99
|
отмаз это
|
|
|||||
|
Что со стопом, что без стопа - один хрен 0%. Притом, что у меня не самый мощный компьютер.
Кроме того, даже если у Вас и 12%, чего исключать нельзя, конечно - всё равно это не 97% и не 99.9%, как можно было бы ожидать от флеша. Радоваться надо ![]()
__________________
Work not wolf - in forest no run |
![]() |
Часовой пояс GMT +4, время: 01:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|