SpriteKitでnode同士がすり抜けてしまう。
physicalbodyを設定した、spriteNode同士が、衝突の際に常に跳ね返って欲しいのに、時々すり抜けてしまいます。
一方をSKAction.moveで移動し、他方にぶつけた時に、跳ね返る時と、すり抜ける時があります。
常に跳ね返るようにするにはどうすれば良いですか?
下の画像の赤い四角が”box”です。
import SpriteKit
class GameScene: SKScene {
private var box : SKSpriteNode!
override func didMove(to view: SKView) {
if let b = self.childNode(withName: "box") {
box = b as? SKSpriteNode
}
}
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
let move = SKAction.moveTo(y: 100, duration: 0.1)
box?.run(move)
}
override func update(_ currentTime: TimeInterval) {
// Called before each frame is rendered
}
}
[GameScene.sks]