Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.04.2015, 15:23
Фомич вне форума Посмотреть профиль Отправить личное сообщение для Фомич Найти все сообщения от Фомич
  № 1  
Ответить с цитированием
Фомич

Регистрация: Feb 2015
Сообщений: 63
По умолчанию Оптимизация считывания курсора в игре

Приветствую! Имеется простая игра, где постоянно считывается положение курсора(вслед ему вращается турель), также есть несколько(не больше шести персонажей) движущихся по экрану. Все бы ничего, но визуально заметно(да и fps отображает), что когда курсор вне флешки(а она не фулскринится, так задумано), то анимация движения и вообще все просто отлично, как только курсор попадает в границы флеша, то падение КПД процентов на 30% и далее сохраняется таким. Что бы это могло быть?
ps Во всей игре всего около дюжины листенеров(считывающих наведение на несколько предметов и меню) и расчет поворота турели берущий положение курсора, не думаю, то это может так сильно влиять на производительность, окажись даже некоторые из них лишними.

Старый 10.04.2015, 15:28
KBAC вне форума Посмотреть профиль Отправить личное сообщение для KBAC Найти все сообщения от KBAC
  № 2  
Ответить с цитированием
KBAC
 
Аватар для KBAC

Регистрация: Jan 2006
Адрес: Москва (Нижний Новгород)
Сообщений: 229
Записей в блоге: 1
Отправить сообщение для KBAC с помощью Skype™
Adobe Scout вам в помощь
__________________
Будь проще.

Старый 10.04.2015, 15:52
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 3  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Adobe Scout вам в помощь
В первую очередь нужно самому свой код проверять. Чем ему поможет скаут?
В коде скорее всего банально слишком много слушателей MOUSE_OVER, MOUSE_OUT (почему-то процентов на 90 уверен, что там именно MOUSE_OVER используется, а не ROLL_OVER, это одна из наиболее распространенных ошибок новичков). Простое получение координат курсора никак на производительность не повлияет.

Старый 10.04.2015, 17:46
Фомич вне форума Посмотреть профиль Отправить личное сообщение для Фомич Найти все сообщения от Фомич
  № 4  
Ответить с цитированием
Фомич

Регистрация: Feb 2015
Сообщений: 63
Установил Adobe Scout, запустил флешку, картина следующая - при нахождении курсора в границах флеша очень много тратится на Button hit testing. Тестово зашторил // все MouseEvent, но ничего особо не изменилось, дало конечно эффект, но незначительный. Что еще может быть? hitTestObject?
Скриншот прикрепил(на графике чередование областей, когда курсор вне флеша и в границах).
Нажмите на изображение для увеличения
Название: Screenshot_2.png
Просмотров: 85
Размер:	123.2 Кб
ID:	31509

Старый 10.04.2015, 19:44
callme вне форума Посмотреть профиль Отправить личное сообщение для callme Найти все сообщения от callme
  № 5  
Ответить с цитированием
callme
 
Аватар для callme

Регистрация: Dec 2014
Сообщений: 312
Допустим на флешке у вас лежит три спрайта, в них лежат другие спрайты и так далее.

Чтобы выяснить где именно тормозит, делайте у этих спрайтов поочередно
Код AS3:
mouseChildren = false;
mouseEnabled = false;

Старый 10.04.2015, 20:30
Фомич вне форума Посмотреть профиль Отправить личное сообщение для Фомич Найти все сообщения от Фомич
  № 6  
Ответить с цитированием
Фомич

Регистрация: Feb 2015
Сообщений: 63
Спасибо за советы, разобрался, отключая/включая участки кода. Помогло кеширование в битмап всех неанимированных объектов.

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:29.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.