Swift 如何用Spritekit模拟弹跳球的运动?

Swift 如何用Spritekit模拟弹跳球的运动?,swift,sprite-kit,Swift,Sprite Kit,我希望有一个这样的运动: 您可以使用SpriteKit提供的物理引擎执行此操作 class GameScene: SKScene { override func didMove(to view: SKView) { addPhysicsBoundariesToScene() addBall() } private func addPhysicsBoundariesToScene() { let physicsBody =

我希望有一个这样的运动:

您可以使用SpriteKit提供的物理引擎执行此操作

class GameScene: SKScene {

    override func didMove(to view: SKView) {
        addPhysicsBoundariesToScene()
        addBall()
    }

    private func addPhysicsBoundariesToScene() {
        let physicsBody = SKPhysicsBody(edgeLoopFrom: frame)
        physicsBody.isDynamic = false
        self.physicsBody = physicsBody
    }

    private func addBall() {
        let ball = SKSpriteNode(imageNamed: "ball")
        let physicsBody = SKPhysicsBody(circleOfRadius: ball.frame.width / 2)
        physicsBody.restitution = 0.7
        ball.physicsBody = physicsBody
        addChild(ball)
    }
}
后果

它是如何工作的? 我将代码分为两种方法

addPhysicsBoundariesToScene() 在场景周围创建空的静态物理实体

addBall() 为球创建动态物理实体

如果要增加反弹效果,请增加该值(最大值1.0)


但是我怎么能做水平运动呢?
physicsBody.restitution = 0.7