我用它来阻止它从底部掉下来,但我希望这个角色能够从屏幕的一侧走开。
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
答案 0 :(得分:0)
试试这个:
CGFloat enlargeByPoints = 100.0;
CGRect frame = self.frame;
frame.origin.x -= enlargeByPoints;
frame.size.width += enlargeByPoints * 2.0;
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:frame];
这会在屏幕两侧将边缘循环的大小扩展100个点。
在离开屏幕后,播放器仍然会进入隐形墙。但您可以使用CGRectContainsRect或其他测试来确定节点是否已完全离开屏幕,然后将其删除或将其放置在屏幕的另一侧。