Javascript 移相器中图形与精灵的碰撞检测

Javascript 移相器中图形与精灵的碰撞检测,javascript,phaser-framework,Javascript,Phaser Framework,这是我的JSFIDLE: 我所做的基本上是创建一个空的精灵,并将弧作为子元素附加,如下所示: paddle = graphics2.arc(0, 0, 110, game.math.degToRad(0), game.math.degToRad(45), false); paddleSprite = game.add.sprite(0, 0); game.physics.enable(paddleSprite, Phaser.Physics.ARCADE); paddleSprite.ancho

这是我的JSFIDLE:

我所做的基本上是创建一个空的精灵,并将弧作为子元素附加,如下所示:

paddle = graphics2.arc(0, 0, 110, game.math.degToRad(0), game.math.degToRad(45), false);
paddleSprite = game.add.sprite(0, 0);
game.physics.enable(paddleSprite, Phaser.Physics.ARCADE);
paddleSprite.anchor.set(0.5);
// Add the graphics to the sprite as a child
paddleSprite.addChild(paddle);
在这种情况下,我可以使用弧上的物理,但这里的问题是 弧线基本上是一个多边形形状,第二个精灵的位置是
0,0
,弧线具有不同的坐标,因此如果球击中弧线,碰撞将不起作用,相反,如果球击中空精灵,碰撞将起作用

  • 如何设置圆弧的碰撞边界,使球与圆弧之间的碰撞生效
  • 有没有任何可能的解决方案,我可以将物理设置为arc而不使用sprite
  • 对于多边形(非矩形)碰撞,必须使用P2物理,而不是街机物理


    或者跳过适当的物理,自己计算碰撞:对照圆弧半径和角度检查球的位置。

    对非矩形对象使用P2物理-