Ios SpriteKit:动态添加和删除关节体

Ios SpriteKit:动态添加和删除关节体,ios,cocoa,sprite-kit,Ios,Cocoa,Sprite Kit,我已经用SpriteKit构建了一个platformer(原型),我有一个问题,我在任何地方都没有看到答案,包括官方文档 由于帧速率开始下降,我决定删除节点,并根据它们与玩家位置的距离(基本上是在屏幕外或屏幕上)动态地将它们重新添加到场景中。这似乎工作良好,我可以得到60帧。但这不适用于连接的物体(如索桥) 我在移除过程中看到异常。我最终设法解决了这个问题,方法是遍历每个节点。physicsBody的关节并在移除节点之前移除这些关节。在恢复它们时,我最初认为将每个桥嵌套在单个SKNode下是答案

我已经用SpriteKit构建了一个platformer(原型),我有一个问题,我在任何地方都没有看到答案,包括官方文档

由于帧速率开始下降,我决定删除节点,并根据它们与玩家位置的距离(基本上是在屏幕外或屏幕上)动态地将它们重新添加到场景中。这似乎工作良好,我可以得到60帧。但这不适用于连接的物体(如索桥)

我在移除过程中看到异常。我最终设法解决了这个问题,方法是遍历每个节点。physicsBody的关节并在移除节点之前移除这些关节。在恢复它们时,我最初认为将每个桥嵌套在单个SKNode下是答案,但这对添加到SKPhysicsWorld的关节没有帮助。我曾经尝试过使用可变数组来保存所有节点,但还没有弄清楚如何删除或重新连接所有节点,因为它们本质上是一个链。我最后一个想法是尝试对关节进行子分类,这样我就可以标记出它们属于哪一座桥,并在任何部分接近屏幕时一次性重建整个桥梁


必须有一种更简单的方法来移除和重新水化节点(带关节)。我可能错过了一些明显的东西。有什么想法吗?

对这些家伙/女孩有什么想法吗?