我在做另一个斯威夫特游戏。地板是沙漠。这层楼是一个基于它的图像纹理的物理体(精灵套件)。我想知道地板的高度,根据一个特定的x点(例如,屏幕中部)。如果我使用floor.size.height,它得到的高度就像它是一个矩形(换句话说,最大可能的高度)。我想得到这个Y点,让玩家在身体上移动。
有人能帮忙吗?

发布于 2017-01-02 19:01:14
你没必要。仅仅因为您使用的是物理,它只是简单地用isDynamic = false表示地板,用isDynamic = true和其他参数表示播放器,例如:
enum CollisionTypes: UInt32 {
    case player1 = 1
    case player2 = 2
    case floor = 4
}
floor.physicsBody?.categoryBitMask = CollisionTypes.floor.rawValue
floor.physicsBody?.contactTestBitMask = CollisionTypes.player.rawValue
floor.physicsBody?.collisionBitMask = 0
player1.physicsBody?.categoryBitMask = CollisionTypes.player1.rawValue
player1.physicsBody?.contactTestBitMask = CollisionTypes.floor.rawValue
player1.physicsBody?.collisionBitMask = CollisionTypes.floor.rawValue这只是一个起点,希望它对你有帮助。
https://stackoverflow.com/questions/41431689
复制相似问题