Итак, допустим, у меня есть этот прямоугольник angular SKNode. Могу ли я добавить SKPhysicsBody только к одной стороне прямоугольника, то есть только к верхней стороне, чтобы только столкновение могло обнаруживать столкновение, а не к другим сторонам (тогда синяя линия индикатора физики будет отображаться только сверху, а не где-либо еще)?
Я хотел создать игру, но я не знаю, может ли что-то подобное сработать.
Так что, если бы я мог, как?
Если я не могу , есть ли способ обойти эту проблему?
Я хотел добавить нормальный прямоугольник с физическим телом только на одной стороне.
См. изображение прямоугольника здесь, синяя часть - это место, где я хочу the PhysicsBody
Итак, я попытался добавить ребро-основанную физическую базу, но, похоже, она не работает (либо физика не была создана или он находится в неправильном положении).
let rectangle = SKSpriteNode(imageNamed: "Rectangle")
rectangle.size = CGSize(width: 128, height: 128)
rectangle.position = CGPoint(x: frame.midX, y: frame.midY)
rectangle.physicsBody = SKPhysicsBody(edgeFrom: CGPoint(x: rectangle.position.x - rectangle.size.width/2, y: rectangle.position.y + rectangle.size.width/2), to: CGPoint(x: rectangle.position.x + rectangle.size.width/2, y: rectangle.position.y + rectangle.size.width/2))
rectangle.physicsBody!.restitution = 0.0
rectangle.physicsBody!.categoryBitMask = physicsCategories.groundCategory
rectangle.physicsBody!.collisionBitMask = physicsCategories.squareCategory
addChild(rectangle)
Спасибо!