0
我正在嘗試創建一個「加載屏幕」來預加載所有的紋理。加載屏幕SpriteKit Swift提高幀率
我在GameViewController.swift如下:
class GameViewController: UIViewController {
var catAtlas = SKTextureAtlas(named:"[email protected]")
//And many more atlas
override func viewDidLoad() {
super.viewDidLoad()
var textureAtlas = NSMutableArray()
textureAtlas.addObject(catAtlas)
SKTextureAtlas.preloadTextureAtlases(textureAtlas, withCompletionHandler: {
//Present Scene
}
})
}
而在一個名爲Obstacles.swift類,這是在GameScene.swift實現:
class Obstacles {
init() { }
var catAtlas = SKTextureAtlas(named:"[email protected]")
func catAnimation(){
//Where catAtlas is used
}
}
這樣的紋理存儲在RAM,但幀速率不會改變(沒有預加載,它是一樣的)。 如果我去做下面的幀速率惡化:
var pinataTextAtlas = GameViewController().catAtlas
我在做什麼錯誤或我怎麼能解決這個問題?
謝謝! (Sorry for my english)
我在設備上運行(iPhone 4S iOS 8.1.2)將遵循您的建議。我會告訴你。 – link900420