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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

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

Регистрация: Sep 2001
Адрес: Москва
Сообщений: 29
Отправить сообщение для softcat с помощью ICQ
По умолчанию Скорость флэш-ролика!

Суть вопроса вот в чем:
есть ролик, который предполагается открывать на разных машинах с разными мощностями. То, что на моем пне 4 мелькает со ультразвуковой скоростью на машине секретарши еле ползает.
Существует ли возможность встаивания во флеш-ролик скрипта, который позволял бы, в зависимости от мощности машины, проигрывать этот ролик с той или иной частотой кадров?
Мне кажется, вопрос довольно актуальный, особенно если флеш со звуком, который синхронно должен идти вместе с анимацией.
__________________
softcat

Старый 23.01.2003, 05:39
uri-uri вне форума Посмотреть профиль Отправить личное сообщение для uri-uri Найти все сообщения от uri-uri
  № 2  
uri-uri

Регистрация: May 2002
Адрес: Ростов-на_Дону
Сообщений: 542
Делаешь у клипа максимальную частоту кадров, например 120.
-------------------------------------- Далее речь идет об AS
С помощью таймера вычисляешь реальную. После этого, в зависимости от реальной частоты устанавливаешь коэффициент повышения скорости програмной анимации.
Всё это делаешь при событии онлоад.
И твоя лампочка будет мигать дважды в секунду при любой скорости реального проигрывания клипа. При повышенных требованиях к стабильности - проделываешь вычисление реальной частоты периодически, опять-же используя таймер.
Но это помогает только при программной анимации. При покадровой-только дискретно можно перепрыгивать через один, через 2, через 3 кадра, или как-то комбинировать (напр. через 1, на следущий, через 1, на след...), чтобы увеличить кол-во пропускаемых кадров не в 2, а в 1,5 раза. Плавности это не добавляет. Так-что ИМХУ - лучше делать программную анимацию. И тестировать на самой слабой машине.
Удачи!
__________________
Uri-Uri


Как могут существовать вещи, которые никогда не случаются?
Измена мира к лучшему!

Старый 23.01.2003, 14:04
softcat вне форума Посмотреть профиль Отправить личное сообщение для softcat Посетить домашнюю страницу softcat Найти все сообщения от softcat
  № 3  
softcat
 
Аватар для softcat

Регистрация: Sep 2001
Адрес: Москва
Сообщений: 29
Отправить сообщение для softcat с помощью ICQ
Я программировать не умею
Я только дизайнер, поэтому могу сделать покадровую анимацию и использовать стандартные экшены, свои написать не смогу, вот такая беда...
__________________
softcat

Старый 23.01.2003, 19:26
Max N Chubin_ вне форума Посмотреть профиль Отправить личное сообщение для Max N Chubin_ Найти все сообщения от Max N Chubin_
  № 4  
Max N Chubin_
 
Аватар для Max N Chubin_

Регистрация: Nov 2001
Адрес: Moscow, Russia
Сообщений: 720
Отправить сообщение для Max N Chubin_ с помощью ICQ
какой то бред...
читаю не врубаюсь...
ребзя, очнитесь!
если я загружу растр 1600x1200 и буду его скроллировать как фон в игре, то никаие программные таймеры не помогут на медленной машине двигать его быстрее!!!!!
на фига делать 120 FPS, а потом замедлять это на быстых машинах???
ставь 12 FPS и делай все на этом frameRate.
А если тормозить будет на слабой машине, то снизь качество отображения клипа и все чем ты можешь помочь компу.

2 uri-uri:
ты сам то пробовал что говоришь? Где логика?

2 softcat:
единственный способ избежать тормозов, это изначально рисовать очень аккуратную графику, без лишних деталей. отработавшие клипы выгружать или удалять. Поменьше баловаться со свойством клипов _alpha. Как можно меньше распределенного по клипам кода (особенно для события entеrFrame)! Максимально использовать досрочное завершение циклов. При проверке разных значений для одной переменной (особенно в циклах) вместо пары IF поставить один if ELSE. Оптимизировать работу с переменными:
вместо:
for(t=1;t<200;t++){
_root.dot.duplicateMovieClip("newclip"+t,t);
eval("newclip"+t)._alpha=random(100);
eval("newclip"+t)._rotation=random(180);
}

пишем:
for(t=1;t<200;t++){
n="newclip"+t;
_root.dot.duplicateMovieClip(n,t);
_root[n]._alpha=random(100);
_root[n]._rotation=random(180);
}

или даже
for(t=1;t<200;t++){
n="newclip"+t;
_root.dot.duplicateMovieClip(n,t,{_alpha:random(100),_rotation:random(180)});
}

короче головой работаем!
__________________
Max.

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

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

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


 


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


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