столкновения . Вот что нашел For example, say there were two types of objects, ships and cannonballs. The ship
object (most likely an SKSpriteNode subclass) could set its collision bitmask to 2
(0010), and the cannonball object could set its bitmask to 4 (0100). This would work
because each bitmask value is a power of two, so it only has a single 1 in its binary
representation. If the cannonballs are intended to collide with the ships, the
cannonballs would need to set their collision bitmasks to the value 2 (0010) to
represent the ships. If the cannonballs should also collide with each other, the bitmask
would need to be 6 (0110). This can easily become confusing with many types of
objects, so the best way to manage bitmasks is to use an enumeration.
8
enum Collision: UInt32 {
case water = 1
case ship = 2
case cannonball = 4
case pirate = 8
case seagull = 16
}
In the enum above, each type of object is mapped to an integer. This makes the
collision logic much simpler. Now, instead of magic numbers, we can set the collision
bitmask of cannonballs using the bitwise OR operation:
self.physicsBody?.collisionBitMask = Collision.ship.rawValue |
Collision.cannonball.rawValue
У меня несколько вопросов :
1 Eсли мои объекты(node) находятся в папке GameScene.sks значит ли это что автоматом добавляется код в с описание того что эти объекты уже есть и с ним можно работать ? Или мне нужно самому добавлять их ? Если да ,то в какую папку? или это без разницы ?
немного не по вопросу, чисто для справки вряд ли кто будет это полотно читать смысл копипасты этой со стака? приветствия и вопроса было бы достаточно, больше ретеншен был бы на твой вопрос, имхо)
Обсуждают сегодня