Головоломки Flash

В течение 30 кадров большая лиса бежит справа налево



Рисунок 17.1 В течение 30 кадров большая лиса бежит справа налево




Индикатор в правом верхнем углу Рисунок 17.1 показывает, что скорость этого ролика составляет 35 кадров в секунду. На самом деле ролику задана скорость 120 кадров в секунду. 35 кадр/сек - реальный результат работы Flash-проигрывателя, который воспроизводит анимацию.
Для того чтобы в верхнем правом углу отображалась надпись "35 fps", необходимо добавить небольшой фрагмент кода. В первый кадр кода надо поместить следующую строчку, чтобы запомнить время начала анимации:

startTime = getTimer();

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

totalTime = getTimerO - startTime;

totalFrames = 30;

fps = totalFrames/(totalTime/1000);

readout = int(fps) + "fps";

Результат работы этого кода можно увидеть в ролике Benchmarkl.fla. Когда я проигрывал ролик на своем Макинтоше в окне предварительного просмотра, результат варьировал от 33 до 35 кадр/сек. Скорость также зависит от изменения масштаба. Попробуйте изменить масштаб в окне предварительного просмотра и посмотрите, как изменится скорость ролика.

Важно помнить, что максимальная скорость, которую может предоставить Flash в таких случаях, - 120 кадр/сек. Если вы укажете скорость по умолчанию, равную, скажем, 12 кадр/сек, анимация будет проигрываться только с этой скоростью или медленнее. Даже если один способ будет быстрее другого, вы не заметите никакой разницы, так как в обоих случаях скорость окажется равна 12 кадр/сек.



Содержание раздела