我只是为我的游戏设置了一个边界,在它真正被强制之前,它似乎工作正常,就像我让我的角色向它跑了几秒钟,然后我的角色将直接通过。对此有什么解释吗?我该如何解决?
编辑:
这是我的边界代码

    func createSceneContents() {
         self.backgroundColor = .black
         self.physicsBody = SKPhysicsBody(edgeLoopFrom: self.frame)
                }

    createSceneContents()
        ship.physicsBody = SKPhysicsBody(rectangleOf: ship.size)
        ship.physicsBody?.affectedByGravity = false
        ship.physicsBody?.isDynamic = true
        ship.name = "ship"
        ship.physicsBody?.categoryBitMask = PhysicsCategory.ship
        ship.physicsBody?.collisionBitMask = PhysicsCategory.ship

最佳答案

尝试为您的ship设置精确碰撞检测:
ship.physicsBody?.usesPreciseCollisionDetection = true
你也可以考虑在边界上添加一个物理类别。

关于swift - 多孔边界,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43412818/

10-10 16:05