我有一个玩家,所以物理体是一个圆。把它想象成有一只像SKNode
一样的翅膀鸟,一个圆圈作为物理体。现在,每次我施加脉冲时,我都希望物理体旋转,但我不希望鸟旋转
我使用physicsbody.allowrotation = true
,但这也会旋转节点(鸟(。我希望鸟不旋转,但物理体应该旋转。
您可以将SKConstraint
添加到SKSpriteNode
限制旋转中。
let birdSprite = SKSpriteNode(imageNamed: "bird.png")
birdSprite.physicsBody = SKPhysicsBody(circleOfRadius: max(birdSprite.size.width / 2, birdSprite.size.height / 2))
birdSprite.physicsBody.allowsRotation = true
birdSprite.constraints = [SKConstraint.zRotation(SKRange(lowerLimit:0 upperLimit:0))]