Я просто поместил узел квадратной формы на сцену и сделал физическое тело сцены краем экрана. Я включил просмотр физики, чтобы вы могли видеть все, что связано с физикой. Квадрат имеет физическое тело вокруг него, как и граница сцены. Однако, когда квадрат упирается в границу, ничего не происходит. Площадь просто проходит насквозь. Вот как я инициализирую квадрат:
let rect1 = CGRect(x: 100, y: 100, width: 50, height: 50)
let square = Square(rect: rect1)
square.fillColor = UIColor.blackColor()
square.zPosition = 200
square.physicsBody = SKPhysicsBody(edgeLoopFromRect: rect1)
square.physicsBody?.allowsRotation = false
square.physicsBody?.affectedByGravity = false
square.physicsBody?.restitution = 0.4
self.addChild(square)
Вот как я инициализирую физическое тело для сцены:
let physicsBody = SKPhysicsBody(edgeLoopFromRect: view.bounds)
self.physicsBody = physicsBody
Очень похожий код работал у меня в других играх, поэтому я не уверен, почему не происходит столкновений. Любая помощь очень ценится спасибо!
self.physicsBody = SKPhysicsBody(edgeLoopFromRect: self.frame)
- person   schedule 24.01.2015Optional(2)
Optional(4294967295)
- person Kendel   schedule 24.01.2015