小编Oli*_*ver的帖子

让球反弹停止

我有一个带有以下变量的球类:

int x,y,width,height;
double velX,velY;
Run Code Online (Sandbox Code Playgroud)

我想这样做,以便每当球击中一个阻挡时,它会反弹并且会失去一些速度.

//Gravity & movement for the ball
ball.setVelY(ball.getVelY() + 0.2);

ball.setY((int)(ball.getY() + ball.getVelY()));

//Make the ball bounce.
if(ball.getBounds().intersects(block.getBounds()){
     ball.setVelY(ball.getVelY() * -0.7);          
}
Run Code Online (Sandbox Code Playgroud)

我认为这会使球慢慢反弹,直到它完全移动大麦(我会测试然后让球完全停止),但事实并非如此.球会正常弹跳几次,每次弹跳都小于之前的弹跳.然而,在几次反弹之后,球将比之前的反弹更低地弹跳.为什么这是我应该怎么做才能解决它?

java physics bounce

1
推荐指数
1
解决办法
318
查看次数

标签 统计

bounce ×1

java ×1

physics ×1