0

我正在尝试为我的游戏中的精灵启用 P2JS 物理引擎,并且game.physics.enable似乎只适用于 Arcade 物理引擎。这里发生了什么?

例子:

player.body
//=> null
game.physics.enable(player, Phaser.Physics.P2JS, true)
//=> undefined
player.body
//=> null
game.physics.enable(player, Phaser.Physics.NINJA, true)
//=> undefined
player.body
//=> null
game.physics.enable(player, Phaser.Physics.ARCADE, true)
//=> undefined
player.body
//=> b.Physics.Arcade.Body {sprite: Player, game: b.Game, type: 0, offset: b.Point, position: b.Point…}
4

2 回答 2

4

你开始P2跑步了吗?

game.physics.startSystem(Phaser.Physics.P2JS);    
game.physics.p2.enable(sprite);

还要确保您使用的是捆绑了 P2 的 Phaser 版本。

于 2014-05-08T03:27:28.543 回答
2

你应该试试这个它会工作

game.physics.startSystem(Phaser.Physics.P2JS);
sprite.physicsBodyType = Phaser.Physics.P2JS;
game.physics.p2.enable(sprite);
于 2015-08-04T20:16:13.493 回答