Показать сообщение отдельно
Старый 02.10.2011, 06:08
flax4Noob вне форума Посмотреть профиль Отправить личное сообщение для flax4Noob Найти все сообщения от flax4Noob
  № 6  
Ответить с цитированием
flax4Noob

Регистрация: Jan 2011
Сообщений: 70
Цитата:
Сообщение от Kicker Посмотреть сообщение
Воспользовался советами - переделал на Timer.
Код AS3:
		var timer:Timer = new Timer(1);
Плакал

Цитата:
Сообщение от Kicker Посмотреть сообщение
Код AS3:
 
			var time:Number = getTimer() - last;
			[skiped]
			last = getTimer();
Результат:[SKIPED]
Ясное дело, что результат соответствует коду. Вы не понимаете схемы работы таймера и, самое главное, схемы анимации. Вам жизненно необходимо сохранять getTimer() в переменную, чтобы "getTimer() - last" учитывало время прорисовки. В вашем варианте оно не учитывается. поэтому, естественно, получаются рывки. И, естественно, вы разочарованы. Попробуйте так:
Код AS3:
var frameTime:uint = getTimer();
var time:Number = frameTime - last;
last = frameTime;
 
и дальше свое колдовство с битмапами.
И таймер ставится в "секунда/1000" => бессмысленно ставить значения ниже 40. Хотя для анимации 25 фпс достаточно 100 поставить.