SKAction.animate与SKTextureAtlas方法不起作用
SKAction.animate方法没有正确动画,我如何使它正常工作。SKAction.animate与SKTextureAtlas方法不起作用
例动画制作方法:
let textureAtlas = SKTextureAtlas(named: "example")
var textureArray = [SKTexture]()
var frames:[SKTexture] = []
for index in 1 ... 4 {
let textureName = "example_\(index)"
let texture = textureAtlas.textureNamed(textureName)
frames.append(texture)
textureArray = frames
print("worked")
}
let animate = SKAction.animate(with: textureArray, timePerFrame: 0.01)
let forever = SKAction.repeatForever(animate)
self.run(forever)
其打印“工作”,但在我的场景其显示红色的X图像时SpriteKit找不到请求的图像你。有什么我做错了吗?
在此先感谢!
请勿使用SKTextureAtlas。
尝试:
斯威夫特3:
var textureArray = [SKTexture]()
for index in 1 ... 4 {
let textureName = "example_\(index)"
let texture = SKTexture(imageNamed: textureName)
textureArray.append(texture)
}
let animate = SKAction.animate(with: textureArray, timePerFrame: 0.01)
let forever = SKAction.repeatForever(animate)
self.run(forever)
我认为textureAtlas本意是在侧视文件访问thingy – Anonymous
纹理地图集将你所有的小纹理转化为1巨大的质感。我喜欢把它称为一个巨大的纹理 – Knight0fDragon
我刚刚意识到你说的话。你的意思是在项目视图中。不,这是在XCAssets – Knight0fDragon
它的伟大工程!非常感谢!!! – Anonymous
这是不好的建议,他们应该修复他们的纹理地图集并使用它。纹理图集旨在减少应用程序的内存足迹。 – Knight0fDragon
@ Knight0fDragon我不同意,你可以上传一个例子吗? – Maetschl