防止物体离开相机边界

时间:2016-01-27 14:21:53

标签: javascript phaser-framework

我正在使用移相器框架玩一点,并尝试制作一个简单的“倒下”游戏。目标是在没有被推到屏幕顶部的情况下快速下降:

要完成此操作,我将画布大小设置为 800x600

var game = new Phaser.Game(800, 600, ...);

并将create()中的世界调整为 800x6000

game.world.resize(800, 6000);

update()我向下移动相机1

game.camera.y += 1;

并检查球是否仍在相机内:

if (!ball.inCamera) {
   // ...         
}

我的问题是:
在左侧和右侧,世界边界限制了球的可移动性(因为球不能离开相机)。如何防止球从底部的相机“掉落”,但仍然可以从顶部的相机中推出?

是否有与

相似的内容
game.physics.arcade.checkCollision.down = true;

但对于相机界限?

修改

这就是球的创造方式:

ball = game.add.sprite(game.world.width / 2, 20, "ball");
game.physics.arcade.enable(ball);
ball.body.gravity.y = 1000;

为了移动球,我检查按键,然后更改ball.body.velocity参数。

1 个答案:

答案 0 :(得分:1)

物理学与相机无关(事实上它不应该),一个优雅的解决方案是创建一个看不见的身体,将其顶部与底部相机对齐并用相机移动它,因此仍然允许球被移出顶部的视图,但不允许它掉下来。