Как создать изогнутые границы уровней с помощью Sprite Kit

#ios #sprite-kit #game-physics

#iOS #sprite-kit #игра-физика

Вопрос:

Карта

Я хочу границу, как на изображении выше. Представьте черную стену с поддержкой физики и красную точку в качестве героя. Герой должен перемещаться внутри границ.

 self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromRect:self.frame];
  

Создает только прямые линии.

Возможно ли это в iOS7 или iOS8?

Ответ №1:

Я думаю, вы хотите bodyWithEdgeLoopFromPath: , который вы передаете CGPathRef . Вы можете получить это из UIBezierPath . Что-то вроде этого:

 UIBezierPath *path = [...]; //Create path to your specifications
self.physicsBody = [SKPhysicsBody bodyWithEdgeLoopFromPath:path.CGPath];
  

Единственное требование заключается в том, чтобы путь не мог пересекаться сам с собой.