我正在构建一个手机游戏并尝试实现与 Flappy Bird 相同的图像旋转概念。
我可以用重力旋转图像计数器时钟,当我触摸屏幕时,旋转是顺时针方向
我的问题是,当我触摸屏幕让鸟飞起来时,我没有顺时针平滑旋转。这只鸟看起来像船一样摇晃。我知道这与起源有关,但我被困在这里。
查看我的代码
private void updateAnimation(){
stateTime += Gdx.graphics.getDeltaTime();
if(!Play.hit && Play.state != Play.GAME_OVER)
currentFrame = walkAnimation.getKeyFrame(stateTime, true);
anim = new Sprite(currentFrame);
anim.setSize(BODY_WIDTH, BODY_HEIGHT);
anim.setOrigin(BODY_WIDTH/2, BODY_HEIGHT/2);
anim.setPosition(SCREEN_X-BODY_WIDTH/2, Player.position.y);
if(Play.state == Play.GAME_RUNNING ){
if(ANGLE >= -75){
if(!Gdx.input.justTouched()){
updateRotation();
}
}
anim.setRotation(getANGLE());
}
anim.draw(batch);
}
public void updateRotation(){
ANGLE = Player.velocity.y / 8;
}
这是设置顺时针旋转的代码
if(GameWorld.ANGLE <= 10){
GameWorld.setANGLE(5* Gdx.graphics.getDeltaTime());
}
Player.velocity.y = 320;