我有一个非常基本的多边形,它是我游戏中精灵的纹理,但是当我尝试从这个纹理为精灵创建一个physicsBody时,我得到了这个错误:
2016-06-19 08:25:21.707 Space Escape[14677:5651144] PhysicsBody: Could not create physics body.
此外,游戏使用许多不同的简单多边形,对于某些人来说,可以创建physicsBody,但对于其他人则会出错。
func setPhysics(size: CGSize) {
self.physicsBody = SKPhysicsBody(texture: asteroidTexture, size: size)
self.physicsBody?.angularDamping = 0
self.physicsBody?.angularVelocity = 2
}
这是纹理:
答案 0 :(得分:1)
在我的操场上它正在工作。尝试替换下面代码中的size
参数并告诉我
let asteroidTexture = SKTexture(imageNamed: "sprite")
let physicsBody = SKPhysicsBody(texture: asteroidTexture, size: asteroidTexture.size())
答案 1 :(得分:0)
我已经尝试过这种物理表现可能会减慢你的碰撞速度。而不是它,如果你不需要精灵的物理身体极其精确,试着使用:
self.physicsBody = SKPhysicsBody(circleOfRadius: size.width/2)
cpu计算更轻,更轻薄。 你可以看到游戏几乎完成时的巨大差异(例如80%)。我希望这会有所帮助。