【发布时间】:2017-02-27 19:51:12
【问题描述】:
我想要按 win1、win2、win3 顺序从 atlas 纹理制作简单动画。我的代码:
var Image = SKSpriteNode()
var ImageAtlas = SKTextureAtlas()
var ImageArray = [SKTexture]()
override func didMove(to view: SKView) {
ImageAtlas = SKTextureAtlas(named: "Images")
for i in 1...ImageAtlas.textureNames.count{
let textureName = "win\(i).png"
let texture = ImageAtlas.textureNamed(textureName)
ImageArray.append(texture)
}
let firstFrame = ImageArray[0]
Image = SKSpriteNode(texture: firstFrame)
Image.setScale(0.7)
Image.position = CGPoint(x: 0, y: self.frame.width / -1.5)
Image.zPosition = 2
self.addChild(Image)
...
Image.run(SKAction.repeatForever(SKAction.animate(with: ImageArray, timePerFrame : 0.01)))
...
当我播放动画时,纹理不是对齐 win1、win2、win3 而是例如 win3、win1、win2。怎么了。谢谢!
【问题讨论】:
-
那么win3是先出现的吗?
标签: ios arrays swift xcode for-loop