Показать сообщение отдельно
Старый 29.12.2013, 12:53
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Привязывайтесь к фпс флэшки, то есть onEnterFrame. В нём уже берете значение прошедшего с последнего обновления времени. Это значение используйте для вычислений.

setInterval для основного апдэйта приложения — плохая практика. В любом же случае у вас рендеринг будет, к примеру, 30 кадров в секунду, а интервал будет по три раза на один рендеринг прогоняться, а это бессмысленно в большинстве случаев.

Нужно динамически менять скорость приложения? Физики и т.п.? Можно попробовать так:

Код AS1/AS2:
var prevTime = getTimer();
var timeSpeed = 1; // Коэффициент скорости течения времени
function globalUpdateMethod(){
    var currentTime = getTimer();
    var delta = currentTime - prevTime;
    prevTime = currentTime;
 
    myPhysics.advanceTime( delta * timeSpeed )
}
this.onEnterFrame = globalUpdateMethod;
__________________
hauts.ru