![]() |
Оптимизация считывания курсора в игре
Приветствую! Имеется простая игра, где постоянно считывается положение курсора(вслед ему вращается турель), также есть несколько(не больше шести персонажей) движущихся по экрану. Все бы ничего, но визуально заметно(да и fps отображает), что когда курсор вне флешки(а она не фулскринится, так задумано), то анимация движения и вообще все просто отлично, как только курсор попадает в границы флеша, то падение КПД процентов на 30% и далее сохраняется таким. Что бы это могло быть?
ps Во всей игре всего около дюжины листенеров(считывающих наведение на несколько предметов и меню) и расчет поворота турели берущий положение курсора, не думаю, то это может так сильно влиять на производительность, окажись даже некоторые из них лишними. |
Adobe Scout вам в помощь
|
Цитата:
В коде скорее всего банально слишком много слушателей MOUSE_OVER, MOUSE_OUT (почему-то процентов на 90 уверен, что там именно MOUSE_OVER используется, а не ROLL_OVER, это одна из наиболее распространенных ошибок новичков). Простое получение координат курсора никак на производительность не повлияет. |
Вложений: 1
Установил Adobe Scout, запустил флешку, картина следующая - при нахождении курсора в границах флеша очень много тратится на Button hit testing. Тестово зашторил // все MouseEvent, но ничего особо не изменилось, дало конечно эффект, но незначительный. Что еще может быть? hitTestObject?
Скриншот прикрепил(на графике чередование областей, когда курсор вне флеша и в границах). Вложение 31509 |
Допустим на флешке у вас лежит три спрайта, в них лежат другие спрайты и так далее.
Чтобы выяснить где именно тормозит, делайте у этих спрайтов поочередно Код AS3:
|
Спасибо за советы, разобрался, отключая/включая участки кода. Помогло кеширование в битмап всех неанимированных объектов.
|
| Часовой пояс GMT +4, время: 02:22. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.