SKSpriteNode动画自下而上显示

时间:2016-10-23 17:54:35

标签: swift sprite-kit skspritenode

根据以下代码,我在x = 400和y = self.frame.height / 2

的场景中显示山(山)

然而,我希望山丘从下到上(从场景下方)出现,就像动画一样。我该如何编码?

let hill = SKSpriteNode(imageNamed: "hill")



hill.position = CGPoint(x: 400, y: self.frame.height / 2 )



hill.setScale(1)

hill.physicsBody = SKPhysicsBody(rectangleOfSize: hill.size)

hill.physicsBody?.categoryBitMask = 1

hill.physicsBody?.collisionBitMask = 2

self.addChild(hill)

1 个答案:

答案 0 :(得分:0)

创建一个动画,使精灵从""下滑动现场,这样做:

将其初始位置设置为场景下方:

hill.position = CGPoint(x: 400, y: self.frame.height / CGFloat(2) - self.frame.height)

注意: - self.frame.height用于将节点1全帧高度放置在所需位置

然后启动一个操作,将其移动到didMoveToView中的所需位置,或者您希望动画开始的位置:

let moveUpAnimation = SKAction.move(to: CGPoint(x: 400, y: self.frame.height / CGFloat(2)), duration: 0.75)

hill.run(moveUpAnimation)

此示例创建一个动作,花费0.75秒将精灵向上移动一整帧高度。您可以将其初始位置设置为可见场景下方的任何位置以创建此效果,并将持续时间更改为任何所需的速度。