根据标题设置精灵旋转

时间:2013-09-07 20:58:07

标签: android andengine sprite

我想设置一个2D精灵的旋转,使其朝向它移动的方向。目前我将加速度计连接到精灵的线速度,当我倾斜设备时它不旋转,只移动。我在Android上运行AndEngine。

我想计算x + / x- / y + / y-以接收旋转度数值。

2 个答案:

答案 0 :(得分:2)

atan2(y,x)应该可以做到这一点。

因此,如果angle = 0在正x方向,

angle = Math.atan2(y_velocity, x_velocity);

为您提供旋转的角度。

答案 1 :(得分:1)

最终想出来,为了达到这个目的,我做了以下几点:

float radians=(float)Math.atan2(-acceleration.x, acceleration.y); //No Idea why I had to invert x axiz but it wouldn't work without it being done
float degrees=(float)Math.toDegrees(radians)+90; //Had to rotate my sprite by 90 degrees
radians=(float)Math.toRadians(degrees);
sprite.setTransform(sprite.getWorldCenter(), radians);