我正在尝试基于数学公式构建动画(速度根据方程式随时间变化) - 因此我使用公式提供x,y坐标,而不是内置函数
在这样做的过程中,我正在努力让计时器正确。例如,如果我设置 timer = new timer(1), object.x = object.x + 1
对象在一秒钟内(或600毫秒)不会超过屏幕 - 接近6-7秒以覆盖600多个像素。假设屏幕更新不像计时器滴答那样快速工作
我有没有办法设置,这样我就可以预测屏幕上的速度,所以动画需要30秒?
答案 0 :(得分:1)
最好使用ENTER_FRAME监听器并根据当前时间(getTimer())在那里做动画。
更新:请参阅getTimer()文档: http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/flash/utils/package.html#getTimer%28%29
请注意动画开始的时间。在每个帧上,从当前时间减去开始时间。你得到的毫秒数。根据该数字计算坐标/颜色/旋转。