Flash中的定时精度

Flash中的定时精度,flash,actionscript-3,actionscript,timing,benchmarking,Flash,Actionscript 3,Actionscript,Timing,Benchmarking,是否有人知道闪存定时的准确性及其识别客户端监视器刷新率的能力?我需要能够计算的时间持续时间高达10毫秒的响应时间的准确性。此外,如果关闭,是否有可能根据监视器刷新率和操作校准响应,以确保该值尽可能精确?任何信息都很好!更好的是一些现有基准测试的例子 更新: 我发现这篇文章很有帮助,但我想看看是否还有其他人在这方面有什么补充 即使在空中,也无法从闪存中获得显示器刷新率。是的,帧可以在不同的时间渲染(特别是在重载情况下)。好的,你最好的精确时间来源是getTimer()。尽管帧速率可能会有所不同,

是否有人知道闪存定时的准确性及其识别客户端监视器刷新率的能力?我需要能够计算的时间持续时间高达10毫秒的响应时间的准确性。此外,如果关闭,是否有可能根据监视器刷新率和操作校准响应,以确保该值尽可能精确?任何信息都很好!更好的是一些现有基准测试的例子

更新

我发现这篇文章很有帮助,但我想看看是否还有其他人在这方面有什么补充


即使在空中,也无法从闪存中获得显示器刷新率。是的,帧可以在不同的时间渲染(特别是在重载情况下)。好的,你最好的精确时间来源是getTimer()。尽管帧速率可能会有所不同,但基于ENTER_FRAME中getTimer()的动画是平滑的(只要帧速率足够高)


编辑:您的代码有机会在帧更改之间执行,所以请将帧速率设置为高,并保持较小的负载。这样你就有更多的机会及时做出反应。我相信getTimer()的准确度高达1ms,但这有点难以检查。运行程序几个小时,然后比较getTimer()和实际经过的时间?。

即使在空中,也无法从闪存中获得监视器刷新率。是的,帧可以在不同的时间渲染(特别是在重载情况下)。好的,你最好的精确时间来源是getTimer()。尽管帧速率可能会有所不同,但基于ENTER_FRAME中getTimer()的动画是平滑的(只要帧速率足够高)


编辑:您的代码有机会在帧更改之间执行,所以请将帧速率设置为高,并保持较小的负载。这样你就有更多的机会及时做出反应。我相信getTimer()的准确度高达1ms,但这有点难以检查。运行程序几个小时,然后比较getTimer()和实际经过的时间?。

无法检测到它,而且Flash Player不使用vsync,因此计算更新时间没有多大用处

这完全取决于你想用它做什么。如果您只是在屏幕上计时,请使用getTimer,因为它精确到1ms——您完全不需要知道监视器刷新率


此外,Timer类对于调用来说是不可靠的,所以要么滚动您自己的Timer类,要么在OneInterFrames上使用getTimer(最准确的屏幕更新方式)。

无法检测到它,Flash Player也不使用vsync,因此计算更新时间没有多大用处

这完全取决于你想用它做什么。如果您只是在屏幕上计时,请使用getTimer,因为它精确到1ms——您完全不需要知道监视器刷新率


此外,Timer类对于调用来说是不可靠的,所以要么滚动您自己的Timer类,要么在OneInterFrames上使用getTimer(最准确的屏幕更新方式)。

小更正:Timer不适合计时,但滚动您自己的Timer不会更好(或更糟)…更正:会的,因为如果您正确构建它,至少可以避免Timer类()创建的累积偏移量。小修正:Timer不适合计时,但滚动自己的不会更好(或更糟)…修正:会的,因为如果正确构建,至少可以避免Timer类()创建的累积偏移量。