![]() |
Код отключает прорисовку
Всем привет.
У меня такая беда: создаю в игре бекграунд программно. Использую метод http://xitri.com/2009/06/24/dynamic-...lash-game.html (генерируется штук 300-400 мувиков, распределяется по экрану, применяются фильтры, а когда готово - всё это перегоняется в битмапу и уже битмапа - добавляется одним мувиком. Все остальные - удаляются.) Делаю это функцией bg. И когда идёт к ней обращение, вся флешка на пару секунд подвисает. Выглядит это так: нажимает пользователь на кнопку "Играть", пару секунд ничего не происходит, а потом появляется уровень: с графикой, музыкой и собственно уже игрой. Курсор, при этом, остаётся в виде руки (наведение на кнопку), т.е. всё конкретно подвисает. Хотя, если идти по логике выполнения, там успевает удалиться экран с меню, и добавиться мувик с игрой, в который, собственно, в это время генерируется и бекграунд, который всё и подвешивает. Вопрос, собственно, заключается в следующем: как можно убрать эту бешеную нагрузку на флеш и сделать чтоб после нажания появлялась иконка загрузки (крутилась), а в это время - генерировался бы бекграунд? Я так понимаю, нужно каким-то образом распределить ресурсы между обработкой кода и графики во флешке? |
Цитата:
Да, нужно разбивать загружаемые данные на порций и между загрузками, давать флеш плееру отрисовывать промежуточные кадры. |
Цитата:
|
Для начала, замерьте, какие участки загрузки - самые толстые. Измерить можно с помощью getTimer():
Код AS3:
Один из вариантов, это последовательный вызов функций, достаточно ламерский способ: Код AS3:
|
Tails, боюсь способ, описанный вами - не подойдёт - я ничего не загружаю (или я чего-то не понял).
Вот функция: Код AS3:
Т.е. просто одновременно на экран добавляется где-то около 2000 мувиков, которые ещё к тому же и нарисованы в векторе. Это ресурсоёмко. Это и хочу как-то разбить, распределить нагрузку так, чтоб можно было в это время, хотя бы, крутить колёсико "загрузки". |
Словом "загрузка" я обозначил ресурсоёмкий и длительный по выполнению участок кода.
Перечитайте способ ещё раз, там ответ на ваш вопрос. Ещё для ознакомления, можете почитать Мука, тему про запланированные обновления экрана. В этой книжке стр. 653 |
Цитата:
Очень красиво получилось на мой взгляд :) |
| Часовой пояс GMT +4, время: 07:00. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.