我需要编写什么代码才能将图像(已在 asset.xcassets 中)显示为 GameScene.swift 的背景?
最佳答案
首先,您可以使用scaleMode .resizeFill
调用场景,修改SKScene
的实际大小以与SKView
完全匹配:
scene.scaleMode = .resizeFill
.resizeFill – 场景未缩放。它只是简单地调整大小以适合 View 。由于场景未缩放,因此图像将全部保持其原始尺寸和纵横比。内容将全部保持相对于场景原点(左下)。
默认情况下,场景的原点位于 View 的左下角。因此,场景初始化时高度为 1024,宽度为 768,原点 (0,0) 位于左下角,坐标 (1024,768) 位于右上角。框架属性保持(0,0)-(1024,768)。 anchor 的默认值为CGPointZero(因此您不需要更改它),这会将其放置在较低的位置-左角。
最后,您可以使用下面的代码添加背景图像(名为 bg.jpg):
// Set background
let txt = SKTexture(imageNamed: "bg.jpg")
let backgroundNode = SKSpriteNode(texture: txt, size:size)
self.addChild(backgroundNode)
backgroundNode.position = CGPoint(x: self.frame.midX, y: self.frame.midY)
关于swift - gamescene.swift 中的背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41077958/