簡體   English   中英

用SpriteKit和Swift重復背景

[英]Repeating Background with SpriteKit and Swift

我玩得很快,我想用SpriteKit做一個簡單的游戲。 應用程序的背景是應重復的紋理圖像。

我的意思是像[img] [img] [img] [img]

我怎樣才能做到這一點?

除其他外,我想永遠移動它。 但是我已經解決了這一部分。

這是我的代碼:

 func generateWave(){

    var wave: SKSpriteNode = SKSpriteNode(imageNamed: "wave")

    var moveWave = SKAction.moveByX(-wave.size.width * 2.0, y: 0, duration: NSTimeInterval(0.02 * wave.size.width * 2.0))
    var resetWave = SKAction.moveByX(wave.size.width * 2.0, y: 0, duration: 0.0)
    var moveWaveForever = SKAction.repeatActionForever(SKAction.sequence([moveWave,resetWave]))

    wave.position = CGPoint(x:CGFloat(1),y:CGFloat(10))

    wave.runAction(moveWaveForever)

    self.addChild(wave)

}

使背景移動后,嘗試使用for循環。 像這樣:

    bgTexture = SKTexture(imageNamed: "wave")
    var movebg = SKAction.moveByX(-bgTexture.size().width, y: 0, duration: 9)
    var replacebg = SKAction.moveByX(bgTexture.size().width, y: 0, duration: 0)
    moveForever = SKAction.repeatActionForever(SKAction.sequence([movebg, replacebg]))
    for var i:CGFloat=0; i<3; i++ {

        wave = SKSpriteNode(texture: bgTexture)
        wave.position = CGPoint(x: bgTexture.size().width/2 + bgTexture.size().width * i, y: CGRectGetMidY(self.frame))
        wave.size.height = self.frame.height

        wave.runAction(moveForever)

        self.addChild(wave) 

} ##

我希望這有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM