2015-06-10 21 views
1

我試圖給SKShapeNode設置動畫,讓它放入並水平來回移動。我如何用SKShapeNode做到這一點?我一直無法找到關於此的任何信息。如何在swift中爲SKShapeNode創建動畫?

+0

您可能感興趣的http://stackoverflow.com/questions/21940495/sine-wave-motion- in-spritekit/30185527#30185527或http://stackoverflow.com/questions/30177117/how-do-i-move-a-skspritenode-up-and-down-around-its-starting-value-in-swift/ 30178191#30178191 – ABakerSmith

回答

1

您可以使用SKAction moveBy。你可以創建一個動作向右移動和左移你只需要扭轉的第一個動作:

override func didMoveToView(view: SKView) { 
    /* Setup your scene here */ 

    let sprite = SKSpriteNode(imageNamed:"Spaceship") 
    sprite.xScale = 0.5 
    sprite.yScale = 0.5 
    sprite.position = CGPointMake(view.scene!.frame.midX - view.bounds.midX - sprite.frame.width, view.scene!.frame.midY) 

    let moveRightAction = SKAction.moveBy(CGVector(dx: view.bounds.midX + (3 * sprite.frame.width), dy: 0), duration: 2.0) 
    let moveLefttAction = moveRightAction.reversedAction() 
    let backAndForthSequence = SKAction.sequence([moveRightAction,moveLefttAction]) 

    sprite.runAction(SKAction.repeatActionForever(backAndForthSequence)) 

    self.addChild(sprite) 
} 
+2

僅供參考,您的示例適用於SKSpriteNode,不適用於SKShapeNode – Kat