可能重复:
How do I apply gravity to my bouncing ball application?
我有一个球类从地面反弹。
以下是我的代码的一部分:
public void update(){
yPos += ySpeed;
ySpeed += gravity;
if(yPos > BOTTOM_OF_SCREEN){
ySpeed *= -1;
}
}
这段代码的问题在于,当我在半空中有一个球时,它会比它开始时弹跳更高,并且越来越弹跳,但是我希望它弹回到它开始时的高度。
答案 0 :(得分:2)
不要提高击中底部的速度(仅当它自由下落时):
void update() {
yPos += ySpeed;
if (yPos > BOTTOM_OF_SCREEN) {
ySpeed *= -1;
} else ySpeed += gravity;
}