找不到 SKTextureAtlas

SKTextureAtlas cannot be found

我将一个名为 "movementAnim" 的文件夹拖到 Image assets 文件夹中,该文件夹是用来创建纹理图集的(来自我从 WWDC 2015 What's New in SpriteKit Session 中挑选的内容)。请看下面的代码:

SimpleSprite class:

Init()  {
    let spriteAtlas = SKTextureAtlas(named: "movementAnim")
    sprite = SKSpriteNode(texture: spriteAtlas.textureNamed("moveAnim01"))

    sprite.name = spriteCategoryName
    sprite.position = CGPointMake(CGRectGetMidX(screenSize), sprite.frame.size.height * 3.7)
    initialPos = sprite.position
    sprite.zPosition = 10

}

func physicsProperties  ()  {
    sprite.physicsBody = SKPhysicsBody(rectangleOfSize: sprite.frame.size)
    sprite.physicsBody?.friction = 0.4
    sprite.physicsBody?.restitution = 0.1
    sprite.physicsBody?.dynamic = false

}

在GameScene的初始化中class:

simpleSprite = SimpleSprite()
addChild(simpleSprite!.sprite)
simpleSprite!.physicsProperties()

我收到以下日志消息:

Texture Atlas 'movementAnim' cannot be found.

但是当我使用以下而不是纹理时,它完美地工作:

sprite = SKSpriteNode(imageNamed: "newMoveAnim01")

我已经交叉检查了名称并确保没有重复的名称。我不确定哪里出了问题。

在项目根路径中创建一个文件夹,将其命名为 movementAnim.atlas,然后将所有图像复制并粘贴到该文件夹​​中。然后返回你的项目导航器并将这个文件夹添加到你的项目中,确保文件夹是蓝色的。

如果您将扩展名 .spriteatlas 添加到您的文件夹名称,它应该可以工作。 XCode默认不加这个

你是对的,现在图集是在image assets文件夹中完成的,William Hu的方法是老方法。