我已经在我的场景编辑器中添加了一个名为“arm”的颜色精灵,但出于多种原因,我需要访问该颜色精灵并以编程方式更改纹理。说明我的目标的另一种方式是,我想将节点链接到我的 GameScene swift 文件并使用数组中的纹理更改纹理。有谁知道如何做到这一点?
问问题
62 次
1 回答
1
首先,您要将精灵节点从您的 GameScene.sks 文件链接到您的 GameScene.swift 文件。
为此,请在顶部附近的 GameScene.swift 中(在“class GameScene: SKScene {”下)使用:
var armNode: SKSpriteNode?
在您的 didMove(to view:) 部分执行以下操作:
armNode = childNode(withName: "arm") as? SKSpriteNode
现在有 3 种不同的方法来更改 SKSpriteNode 的颜色/纹理,具体取决于您在做什么:
armNode.colour = UIColor.red
armNode.texture = SKTexture(imageNamed: "your arm image here")
armNode.texture = textureArray[2]
第 3 个版本使用纹理数组中的纹理
于 2021-01-20T20:46:17.433 回答