假设我的大小为25x25 SKSpriteNode
,我将节点的.texture
属性更改为大小为50x50的纹理。似乎它试图缩小新纹理以适应25x25的大小,即节点的原始大小。但是如何更改节点的大小以适应纹理的新大小,在此示例中为50x50。
简而言之,我希望我的精灵调整大小以适应新纹理的尺寸。
override func applyEffect() {
switch(tier) {
case 2:
sprite.texture = SKTexture(imageNamed: "clock2")
case 3:
sprite.texture = SKTexture(imageNamed: "clock3")
case 4:
sprite.texture = SKTexture(imageNamed: "clock4")
default:
print("")
}
}
谢谢!
答案 0 :(得分:1)
看起来纹理错误又回来了,但有时只取决于你如何处理资产文件夹。我在Xcode 8.3.3中正在使用它,并且能够使它既工作又不工作,具体取决于它的配置方式。看起来它在Xcode 9中也被打破了。作为解决方法,在为节点分配新纹理后执行node.size = node.texture!.size()
。注意:node
是您要更改大小的精灵的名称。
答案 1 :(得分:0)
通过将resize参数设置为true,可以在添加新纹理时将节点设置为调整大小
let newTexture = SKTexture(imageNamed: "someNewTexture")
someNode.run(SKAction.setTexture(newTexture, resize: true))