1

您好,我有一个 SceneKit 游戏,我希望两个对象发生碰撞并对另一个对象做出物理反应。这适用于除一个之外的所有对象。这种形状似乎不准确,因为我的球员(一个滚动的球)经常会直接穿过它的一部分,而其他时候它会对碰撞做出反应。我认为这可能与球的速度有关。有没有办法提高这个对象的准确性?谢谢

let PillarGeometry = SCNCylinder(radius: 3, height: 3)
        PillarGeometry.firstMaterial!.diffuse.contents = UIColor.darkGrayColor()
        let Pillar = SCNNode(geometry: PillarGeometry)
        Pillar.physicsBody = SCNPhysicsBody(type: SCNPhysicsBodyType.Static, shape: nil)
        Pillar.physicsBody?.categoryBitMask = CollisionByStanderCategory
        Pillar.physicsBody?.collisionBitMask = CollisionBallCategory
        Pillar.position = SCNVector3Make(0, 3, 0)
        Pillar.categoryBitMask = colorCategory
        Box.addChildNode(Pillar)
4

1 回答 1

3

您可以将场景的physicsWorld.timeStep值增加到较小的值,例如 1/300。

于 2015-01-27T22:44:33.480 回答