我的主角SKSpriteNode
启用了PhysicsBody
。我的场景也有PhysicsBody
应用于包含视图中的主角。在角色上使用PanGesture
或touch and drag
类型控件,我可以在场景中移动角色而不会出现任何问题。
问题在于,如果我非常快速地移动手指,例如:对视图边缘进行大幅滑动,角色可能会破坏场景的PhysicsBody
,导致其离开屏幕。在我的游戏逻辑中,关闭屏幕会结束游戏,所以这是不可接受的。
那么如何以可能较高的用户输入速度将SKSpriteNode
包含在场景视图中呢?
注意:我也尝试为角色精灵启用usesPreciseCollisionDetection
,但这似乎没什么区别。
此问题已在模拟器和实时测试中复制。
答案 0 :(得分:1)
常见的解决方法是,不要使用基于边缘的形状作为场景边界,而是围绕场景制作四个方形体。你的积木越大,你需要越快通过它。