我遇到了最奇怪的行为,即如果太多其他物体(圆形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
答案 0 :(得分:1)
物理主体的节点越高,帧速率越低。
帧速率越低,引擎越疯狂。有一次,我甚至看到它会产生某种黑洞。
如果减轻对墙壁的作用力,无论重力还是施力的速度,它都会有所帮助。同时确保为他们提供足够的空间将有所帮助。
使用精确的碰撞检测甚至可以进一步降低帧速率。