如何将动画片段旋转到它的加速度? AS3

时间:2015-07-04 17:52:40

标签: android actionscript-3 flash air

我正在AS3中为Android /苹果手机制作一个简单的游戏,我正在使用Accelerometer来移动一个小家伙穿过隧道的东西。所以我想知道如何让他看向他正在移动的方向。

我有一个名为“ball”的影片剪辑。然后我将“AccelerometerEvent.Update”eventlistener用于一个名为“accUpdate”的函数,其中我创建了两个变量“accY”和“accY”,这些变量在您向不同方向移动手机时正在更新。然后在我的主要更新功能中,我有一段移动球的代码片段

if (!isNaN(accX)){
    ball.x -= accX*15;
}
if(!isNaN(accY)){
    ball.y += accY*15;
}

请告诉我您是否还需要其他信息。提前致谢:D

1 个答案:

答案 0 :(得分:0)

跟踪先前的位置(x和y)。最好跟踪一些,而不仅仅是一个(会更顺畅)。然后使用:How to calculate the angle between a line and the horizontal axis?

它基本上使用Math.atan2,但你最好仔细阅读。这样您就知道“最后”位置,新位置,然后计算旋转对象所需的角度。这就像在两点(旧位置和新位置)之间画一条线。