移除出界对象:
if(sprite.x - sprite.width/2 > right ||
sprite.x + sprite.width/2 < left ||
sprite.y - sprite.height / 2 > bottom ||
sprite.y + sprite.height / 2 < top)
{
// 移除影片的代码
}
重置出界对象:
if(sprite.x - sprite.width / 2 > right)
{
sprite.x = left - sprite.width / 2;
}else if(sprite.x + sprite.width / 2 < left)
{
sprite.x = right + sprite.width / 2;
}
if(sprite.y - sprite.height / 2 > bottom)
{
sprite.y = top - sprite.height / 2;
}
else if(sprite.y + sprite.height / 2 < top)
{
sprite.y = bottom + sprite.height / 2;
}
摩擦力应用(正确方法):
speed = Math.sqrt(vx*vx + vy*vy);
angle = Math.atan2(vy, vx);
if(speed > friction)
{
speed -= friction;
}else{
speed = 0;
}
vx = Math.cos(angle)*speed;
vy = Math.sin(angle)*speed;
摩擦力应用(简便方法):
vx *= friction;
vy *= friction;
friction为常量 < 1 Number型