![]() |
Sprite с 5000 полигонами: тормоза при наведении курсора
Есть примерно такая конструкция:
Код:
ss=new Sprite();Все это безобразие должно шустро анимироваться. Если поставить low quality и отключить масшабирование, то рисуется довольно шустро, fps много не бывает, но анимация идет нормально, можно сказать плавно. Пока идет отрисовка, то загрузка CPU под 100%, как отрисовка закончилась - 0%. Но стоит только провести курсором над этим спрайтом, так загрузка опять под 50-100%! Никаких событий от спрайта не слушаю. CacheAsBitmap включал. Выкидывал вообще все Listener - не помогло. Вопрос: как решить проблему в загрузкой CPU? А то хотелось бы слушать события мышки от самой сцены (клики, движения по всему экрану, координаты сам обработаю), но из-за тормозов сцена практически неуправляема, события если и приходят, то с большим опозданием. |
если полигоны внутри спрайта движутся то CacheAsBitmap только ухудшит ситуацию.
проц загружается в основном при обработке графики, так что если у тебя много альфа каналов или много движущихся объектов - проц загружается просто ацки. 5000 объектов вообще жесть! если не секрет это ты куда столько собрался использовать? а на счёт мышки - тут проц загружает не листенер флешки как ты подумал а Операционка. она ж тоже должна обрабатывать потоки от железки преобразовывать в координаты считать что куда да как и т.д. ) |
mouseEnabled & mouseChildren?
|
> если полигоны внутри спрайта движутся то CacheAsBitmap только ухудшит ситуацию.
А можно двигать полигоны? Как? Я просто при отрисовке нового кадра clear() делаю. Как бы нарисовал, а потом стер. Да и не думаю, что будет легче, ведь все вершины пересчитываются. Попробую отключить кеширование. Хотя там в любом случае рисуется через двойную буфферизацию :( > проц загружается в основном при обработке графики, так что если у тебя много альфа каналов или много движущихся объектов - проц загружается просто ацки. Альфа не используется, все непрозрачно (разве что антиалиасинг на окантовке) В момент движения мыши отрисовка уже не идет. > а Операционка. она ж тоже должна обрабатывать потоки от железки преобразовывать в координаты считать что куда да как и т.д. ) Обычно ей хватает на это менее 1% > mouseEnabled & mouseChildren? Попробую отлючить, спасибо. А получению событий от самой сцены не повредит? Мне глобально события ловить охота. |
Глобально и от сцены чем-то отличается? :)
|
покажи хоть что рисуешь... может вообще там подход изначально неправильный.
|
У меня подобная проблема.
Мувик, в нем сложная протрейсенная из .png-шек анимация. Достаточно пять таких мувиков на сцене и fps не поднимается выше 14. Как лучше всего делать анимацию, допустим, персонажа игры? Потому что трейс изображения слишком уж жирно да и увесисто для анимации персонажей. |
динамически рисовать битмапку каждого кадра, а потом показывать то что надо
|
Всмысле каждый кадр cacheAsBitmap? Я пробовал - непомогает.
|
нет. всмысле каждый каждый кадр битмап.
|
| Часовой пояс GMT +4, время: 11:18. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.