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