Страница 1 из 2

Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 12:33
prinum
Добрый день, не столь давно стал работать с Flash, перейдя на него с PHP+JS, поэтому хочу задать сразу несколько вопросов, делаю прелоадер для приложения под ВК.

Нашел что прелоадеры бывают двух видов: внутренний и внешний.

Подскажите какой выбрать: внешний или внутренний?

По поводу внешнего все понятно и все работает, смущает что в ВК в настройках, я под основной флеш загружаю прелоадер, а само приложение идет в дополнительные swf, как-то это неправильно... Получается что я должен в прелоадере жестко задавать путь к основному приложению, и если я там что-то поменяю, придется обновить сначала его в дополнительных swf, потом изменить путь в прелоадере и затем залить его.

Под внутренний прелоадер - нашел кучу статей как их делать, но они предлагают ставить код во фреймы, а я привык весь код выносить в отдельный файл.

Думал что нужно повесить событие на загрузку первого фрейма и оттуда while-ом выводить проценты загрузки, но не могу смерится, что будет цикл... Вдруг сервер подвиснет и он повесит пользователю браузер.

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 14:38
sanych_dv
Здесь доступно о внутреннем прелоадере: http://macflash.ru/?p=79

Здесь пример кода: http://www.flasher.ru/forum/showthread.php?p=1011994

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 15:15
prinum
sanych_dv писал(а):Здесь доступно о внутреннем прелоадере: http://macflash.ru/?p=79

Здесь пример кода: http://www.flasher.ru/forum/showthread.php?p=1011994
Супер! Огромное спасибо за ссылки, но в целом есть ли какие-то плюсы между внешним и внутренним прелоадом? Внешний я не стал использовать т.к. не в курсе тонкостей флеша, но создать ребенка из целого мувика мне кажется может вызывать тормоза.

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 15:33
sanych_dv
О каком "ребенке" идет речь? )) Внутренний прелоадер просто считает байты.

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 15:39
prinum
sanych_dv писал(а):О каком "ребенке" идет речь? )) Внутренний прелоадер просто считает байты.
При 100% загрузки внешний прелоад делает

Код: Выделить всё

             function onLoadComplete(evt:Event):void {//окончание загрузки                // удаляем поле с прогрессом загрузки                removeChild(progress_tf);                // отображаем то что загрузилось                addChild(loader); - ВОТ ЭТО МЕСТО СМУЩАЕТ =)            } 
, так вот насколько быстро он может подгрузить тяжелый файл? addChild(loader) - на сколько он быстро работает?

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 15:58
sanych_dv
addChild просто добавляет экземпляр объекта на сцену, при чем тут скорость? Скорость зависит от того, насколько быстро закачается весь ролик к клиенту.

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 16:00
prinum
sanych_dv писал(а):addChild просто добавляет экземпляр объекта на сцену, при чем тут скорость? Скорость зависит от того, насколько быстро закачается весь ролик к клиенту.
Когда я искал статьи, в одной автор жаловался что в его проекте с 2000 кадрами при добавлении объекта на сцену флеш мувик намертво вешался.

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 16:13
sanych_dv
О каких кадрах речь вообще? Прелоадер, который подключается через [Frame(factoryClass...)] после загрузки запускает основной класс вашего проекта. А там уже ваше дело, какие объекты из библиотеки и в каком порядке выкладывать на сцену.

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 16:23
Alazaur
sanych_dv, автор топика видимо запутался.
prinum, addChild() к прелоадеру отношения не имеет, это одна из самых часто употребляемых функций во флеше.
addChild(loader) - на сколько он быстро работает?
моментально работает, добавление на сцену в цикле 1000 объектов отработает миллисекунд за 20. (на моей машине во всяком случае)

Re: Прелоадер для Flash приложения для ВК

Добавлено: 15 авг 2012, 16:25
prinum
Alazaur писал(а):sanych_dv, автор топика видимо запутался.
prinum, addChild() к прелоадеру отношения не имеет, это одна из самых часто употребляемых функций во флеше.
addChild(loader) - на сколько он быстро работает?
моментально работает, добавление на сцену в цикле 1000 объектов отработает миллисекунд за 20. (на моей машине во всяком случае)
Спасибо!