我正在制作益智游戏,我多次使用几种类型的精灵。所以我对游戏性能有疑问。哪个更好,稍后在for/in
方法中在setup()
循环中创建精灵,或者在类的初始化程序中预加载精灵,然后只复制setup()
中的精灵?例如:
func setup() {
for i in 0...10 {
let sprite = SKSpriteNode(imageNamed: "FirstSpriteName")
sprite.position = etc...
}
}
或在初始化类时预加载精灵:
let firstSprite = SKSpriteNode(imageNamed: "FirstSpriteName")
以及后来setup()
func:
func setup() {
for i in 0...10 {
let sprite = firstSprite.copy()
sprite.position = etc...
}
}
答案 0 :(得分:2)
如果您多次使用同一图像,最好像这样加载它:
let texture = SKTexture(imageNamed: "SpriteName")
然后在您需要时使用它:
let sprite = SKSpriteNode(texture: texture)
这样它只会加载一次纹理,但许多精灵会使用它。