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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 03.10.2008, 00:01
0rion вне форума Посмотреть профиль Отправить личное сообщение для 0rion Найти все сообщения от 0rion
  № 1  
Ответить с цитированием
0rion
[+4 04.10.08]

Регистрация: Oct 2008
Сообщений: 10
По умолчанию Отклик браузера на смену позиции при ресайзе.

Существует сцена, в центре которой стоит блок с Event.RESIZE который просто центрует этот блок при смене размера браузера.
Далее в этот блок грузится через getDefinition несколько инстансов разных swf файлов с документ классом. А так же помимо эти внешних классов просто картинка обёрнутая в movieclip.
При быстрой смене размера браузера (тупо взял за край и подёргал мышкой) движения мувика с картинкой по отклику в несколько раз превышает основной блок.
Тобишь картинка летает и центруется очень быстро, а блок иногда ваще зависает иногда ступенчето с низким fps двигается.
Помимо этого с разной скоростью центруются мувиклипы внутри самого блока. (Нарушается внутреняя центровка)
В Мозилле это особенно чувствуется.
Странно особенно то, что смену позиции при ресайзе мувиклип с картинкой наследует от главного блока, но при этом главный блок медленей обновляет свою позицию.

Как можно закрепить все элементы для синхронно движения, и вообще почему это происходит? (Возможно выход как-то реорганизовать клипы повесив на каждый Event Resize?)

Загрузка в сцену несколько инстансов таким методом
Код:
thumb=evt.target.applicationDomain.getDefinition("thumb");	
thumb1=new thumb();
.....
stage.addChild(thumb1);
thumb1.customMadeFunctionStart();
Насколько загружает сцену ? (Допустим есть 5 новых классов и по несколько инстансев каждого присудствует на сцене)
Какая алтернатива улучшит перформанс всей сцены в целом?

В програмирование я не первый год, основные языки C++, Java, PHP.
С самим АС3 проблем нет, но вот с тонкастями и обходыми путями совсем не знаком, делаю первый проект на АС, обгуглил всё, ответа не нашёл.
Памажите чем кто может!

Старый 03.10.2008, 18:23
0rion вне форума Посмотреть профиль Отправить личное сообщение для 0rion Найти все сообщения от 0rion
  № 2  
Ответить с цитированием
0rion
[+4 04.10.08]

Регистрация: Oct 2008
Сообщений: 10
Скажите хотябы насчёт последнего.
Насколько это оптимально создавать внешние swf c мувиклипом и документирвоаным классом.
А потом загружать весь класс в основную сцену, и создавать его инстансы?
Код преведён выше.
Может ли такой подход значительно подтормаживать обработку сцены?
Ести ли альтернативные методы?

Старый 05.10.2008, 00:49
0rion вне форума Посмотреть профиль Отправить личное сообщение для 0rion Найти все сообщения от 0rion
  № 3  
Ответить с цитированием
0rion
[+4 04.10.08]

Регистрация: Oct 2008
Сообщений: 10
Весело...
что ниодного знатока applicationDomain.getDefinition() ???

Старый 05.10.2008, 00:55
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Пользователь 0rion получает предупреждение за флуд.
Отвечать вам никто не обязан, это сугубо добровольное желание.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 05.10.2008, 14:18
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 5  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>Как можно закрепить все элементы для синхронно движения

как вариант: сосредоточить позиционирование всех элементов в одном обработчике..

причем здесь applicationDomain.getDefinition я не понял..,
имхо не при чем: попробуй собрать аналогичную схему их собственной библиотеки, думаю, что результат будет таким же

Старый 05.10.2008, 16:27
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 6  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Ну не знаю... повесь рядом таск менеджер, когда перетаскиваешь рамку браузера... может плееру просто тяжело пересчитать... По идее ресайз для всех элементов и так вызывается в одном обработчике... так что разницы быть не должно (это при условии, что стейдж для всех общий).

кроме того влияет то, с какой частотой браузер диспатчит своим детям этот самый ресайз... если он делает это недостаточно часто, то тут уж ничем не поможешь...
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 05.10.2008 в 16:30.
Старый 06.10.2008, 23:31
0rion вне форума Посмотреть профиль Отправить личное сообщение для 0rion Найти все сообщения от 0rion
  № 7  
Ответить с цитированием
0rion
[+4 04.10.08]

Регистрация: Oct 2008
Сообщений: 10
silin,
Ты предлогаешь менять позицию всём элементам вместо того чтоб засунуть все элементы в один контейнер и его позиционировать? Есть довод что это поможет?
Насчёт applicationDomain.getDefinition : вообще хотел спросить насколько классы созданные таким методом и преминяемые в сцене сложны затрудняют рендер сцены?

wvxvw, Вешал таск менегер выше 2-3 процентов неподнимается.

Насчёт диспачера интересно.. может есть какая то инфа о перформансе разных браузеров касательно диспатчера?

Старый 06.10.2008, 23:52
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 8  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
сори, видимо не правильно прочитал ситуацию
из того, что "картинка летает и центруется очень быстро, а блок иногда ваще зависает.." я понял, что считаются они каждый сам по себе..

у тебя получается, что элементы контейнера по разному реагируют на его позиционирование?

Старый 06.10.2008, 23:56
0rion вне форума Посмотреть профиль Отправить личное сообщение для 0rion Найти все сообщения от 0rion
  № 9  
Ответить с цитированием
0rion
[+4 04.10.08]

Регистрация: Oct 2008
Сообщений: 10
Именно! Они все в контейнере.
На них самих вообще эвента нету.
Контейнер только позицию меняет, как следтвие элементы тоже, однако с разной чистотой и скоростью.

Старый 07.10.2008, 00:30
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 10  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Код:
FF3

update time: 9
update time: 9
update time: 8
update time: 7
update time: 9
update time: 7
update time: 7
update time: 8
update time: 9
update time: 8
update time: 8
update time: 8
update time: 8
update time: 8
update time: 8
update time: 8
update time: 8
update time: 9
update time: 7
update time: 9
update time: 8
update time: 7
update time: 7
update time: 6
update time: 6
update time: 9
update time: 8
update time: 8
update time: 9
update time: 8
update time: 8
update time: 9
update time: 8
update time: 8
update time: 8
update time: 6
update time: 7
update time: 7

IE6

update time: 13
update time: 11
update time: 10
update time: 7
update time: 4
update time: 4
update time: 4
update time: 4
update time: 4
update time: 5
update time: 5
update time: 5
update time: 88
update time: 11
update time: 13
update time: 5
update time: 5
update time: 5
update time: 12
update time: 12
update time: 11
update time: 5
update time: 5
update time: 5
update time: 12
update time: 12
update time: 6
update time: 6
update time: 5
update time: 5
update time: 12
update time: 12
update time: 4
update time: 6
update time: 6
update time: 5
update time: 5
update time: 5
update time: 5

Chrome

update time: 9
update time: 10
update time: 8
update time: 8
update time: 8
update time: 5
update time: 8
update time: 6
update time: 9
update time: 72
update time: 6
update time: 9
update time: 7
update time: 7
update time: 6
update time: 8
update time: 8
update time: 7
update time: 10
update time: 8
update time: 9
update time: 8
update time: 8
update time: 5
update time: 8
update time: 8
update time: 8
update time: 11
update time: 7
update time: 8
update time: 6
update time: 8
update time: 10
update time: 9
update time: 10
update time: 9
update time: 7
update time: 7
update time: 10
Код:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.addEventListener(Event.RESIZE, handleResize);
var t:int = getTimer();
var tf:TextField = new TextField();
tf.autoSize = TextFieldAutoSize.LEFT;
addChild(tf);
function handleResize(evt:Event):void
{
	t = getTimer() - t;
	tf.appendText("\rupdate time: " + t);
	t = getTimer();
}
Вот, попробовал потестить, получилась примерно такая выборка... ну, даж не знаю... есть небольшая разница, но на глаз не должно быть заметно...
__________________
Hell is the possibility of sanity

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

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

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


 


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


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