Я использую это, чтобы он не падал со дна, но я хочу, чтобы персонаж мог уйти за край экрана.
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
Я использую это, чтобы он не падал со дна, но я хочу, чтобы персонаж мог уйти за край экрана.
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
Попробуй это:
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 или другие тесты, чтобы определить, полностью ли узел покинул экран, а затем удалить его или, возможно, расположить на другой стороне экрана.
bodyWithEdgeFromPoint:toPoint:
? - person Wain   schedule 28.03.2014