Точно измеряя время дельта - PullRequest
3 голосов
/ 25 января 2012

Как я понимаю, getTimer() очень неточно - на моей собственной машине он всегда возвращает значение, которое является произведением ~ 16.(16, 33, 50 и т.для получения информации по этому вопросу, но большая часть того, что я нахожу, кажется излишне сложной.

1 Ответ

4 голосов
/ 25 января 2012

Редактировать:
Копать дальше, и с помощью коллеги, очевидно, вы можете получить хорошее время, используя звук.Попробуйте создать новый объект Sound, воспроизвести его, а затем извлечь свойство position из возвращенного объекта SoundChannel.Здесь также есть несколько хороших идей: Переполнение стека - точный прослушиватель событий BPM в AS3

Я не пробовал этого, но вы можете попробовать использовать класс Date иизвлечь из него свойство milliseconds и использовать его.Я не уверен, насколько это точно, по сравнению с getTimer, но, возможно, стоит поэкспериментировать.См. AS3: Дата документации для получения дополнительной информации.Однако обратите внимание, что в документе «Дата» явно сказано следующее: Чтобы вычислить относительное время или прошедшее время, см. Метод getTimer () в пакете flash.utils.

Кроме этого яЯ думаю, что вы застряли с использованием getTimer, и данные, которые он возвращает, зависят от вашей текущей ОС / браузера.Возможно, вы уже проверили эти ссылки, иначе они помогут объяснить проблему:

Tinic Uro - частота кадров в проигрывателе Flash Player

Переполнение стека -AS3: Насколько точны метод getTimer () и класс Timer?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...