2015-10-14 47 views
0

據我所知,iOS 9正在將地圖集變成可怕的東西,所以我不想使用它。至少在他們解決問題之前。我需要對一隻手進行動畫處理,並試圖在沒有地圖集的情況下執行此操作。然而,由於某種原因,它在我身上崩潰。我在images.xcassets中有我的紋理。這就是我所做的:如何在沒有紋理圖集的情況下爲動畫製作小精靈

var leftHand = SKSpriteNode() 
var leftArmAnimationArray = ["1l", "2l", "3l", "4l", "5l"] 

func addLeftHand() { 
    leftHand = SKSpriteNode(imageNamed: "1l") 
    leftHand.position = CGPointMake(CGRectGetMidX(self.frame), CGRectGetMidY(self.frame)) 
    addChild(leftHand) 
} 

override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) { 

    for touch: AnyObject in touches { 
     let location = touch.locationInNode(self) 
     switch self.nodeAtPoint(location) { 
     case self.leftHand: 
leftHand.runAction(SKAction.animateWithTextures(leftArmAnimationArray, timePerFrame: 0.3)) 
    } 
    } 
} 

它崩潰並向我展示SIGABRT。我究竟做錯了什麼?如果沒有.atlas,那麼可以在SpriteKit中爲Sprite添加動畫?

+0

也許可以嘗試在紋理名稱的末尾添加'.png'(或者任何你正在使用的)(比如''1l.png「,」2l.png「等)。 – Gliderman

+0

@Gliderman很不幸沒有工作 – Burundanga

回答

1

認爲你需要爲你放置在leftArmAnimationArray中的每個項目說SKTexture(imageNamed:「1l」),SKTexture(imageNamed:「2l」),現在它只是一個字符串數組,應該是數組紋理。

+0

你是對的!它的工作,謝謝! – Burundanga

相關問題