SpriteKit:物理体在太大的力下断裂(applyForce)

SpriteKit: Physics bodies breaking under too much force (applyForce)

我遇到了最奇怪的行为,物理引擎决定如果有太多其他物体(圆形 SKPhysicsBody)推动它(使用 applyForce()),墙壁(矩形 SKPhysicsBody)就会破裂

据我所知,SpriteKit 没有对象断点或任何类似的概念。关于如何阻止这种情况发生的任何想法?

注意:如果我将 SKPhysicsBody.dynamic 更改为 FALSE,则主体不会再损坏。只是为了确认物理引擎是罪魁祸首

视频 1:敌人少,不休息:

https://www.youtube.com/watch?v=0I2PUeX8GHQ&feature=youtu.be

视频 2:更多敌人,突破:

https://www.youtube.com/watch?v=-OkfifPCkmY&feature=youtu.be

物理体节点越高,帧率越低。

帧率越低,引擎越疯狂。有一次我什至看到它变成了某种黑洞。

如果您减少对墙壁的力,无论是重力还是来自 applyforce 的速度,都会有所帮助。另外,确保有足够的 space 供他们使用也会有所帮助。

使用精确的碰撞检测甚至会进一步降低帧率。