2
我正在製作另一個Swift遊戲。地板是沙漠。 這個地板是基於它的圖像紋理的物理體(sprite kit)。 我想知道基於特定x點的樓層高度(例如屏幕中間)。 如果我使用floor.size.height,它會獲得像它是矩形的高度(換句話說,最大高度可能)。 我想讓這個Y點讓玩家在物理體上移動。從x點快速獲取圖像高度
任何人都可以幫忙嗎?
我正在製作另一個Swift遊戲。地板是沙漠。 這個地板是基於它的圖像紋理的物理體(sprite kit)。 我想知道基於特定x點的樓層高度(例如屏幕中間)。 如果我使用floor.size.height,它會獲得像它是矩形的高度(換句話說,最大高度可能)。 我想讓這個Y點讓玩家在物理體上移動。從x點快速獲取圖像高度
任何人都可以幫忙嗎?
你有沒有這個必要。僅僅因爲你使用的是物理,它只是說明與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
這僅僅是一個點開始所以希望它可以幫助你。
實際上物理效果也很好,作爲聯繫人處理... 地板是穩定的動態虛假和玩家正在與動態真實... 但如果我使用這個:player.run(SKAction.moveBy( x:10,y:0,持續時間:0))玩家可能會在上坡時移動到地板 –
如果您不想意外的行爲,則不應該使用SKAction.move..with物理。而是使用applyImpulse或改變你的精靈速度。 –
好的提示!謝謝! –