我将一个名为“movementanim”的文件夹拖到“图像资源”文件夹中,该文件夹将创建一个纹理图集(从我从WWDC 2015中选择的内容spritekit会话中的新内容)。请参见下面的代码:
SimpleSprite类:
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类的init中:
simpleSprite = SimpleSprite()
addChild(simpleSprite!.sprite)
simpleSprite!.physicsProperties()
我收到以下日志消息:
Texture Atlas 'movementAnim' cannot be found.
但是,当我使用以下内容而不是纹理时,它就完美地工作了:
sprite = SKSpriteNode(imageNamed: "newMoveAnim01")
我交叉核对了名字,确保没有重复的。我不知道怎么了。
最佳答案
如果将扩展名.spriteatlas添加到文件夹名中,它应该可以工作。默认情况下,xcode不添加此项。
你说的对,地图集现在是在图像资源文件夹中完成的,胡威廉的方式是以前的方式。
关于swift - 找不到SKTextureAtlas,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34992305/