3

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

简单精灵类:

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 类的初始化中:

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

我收到以下日志消息:

Texture Atlas 'movementAnim' cannot be found.

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

sprite = SKSpriteNode(imageNamed: "newMoveAnim01")

我已经检查了名称并确保没有重复。我不确定出了什么问题。

4

2 回答 2

8

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

你是对的,现在在图像资产文件夹中完成了图集,William Hu 的方式是它的旧方式。

于 2016-01-25T14:01:35.917 回答
2

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

于 2016-01-25T13:30:30.147 回答