如何在场景中添加背景? SpriteKit Swift 4

时间:2018-03-10 01:07:51

标签: swift sprite-kit

我正在使用SpriteKit制作无尽的亚军游戏。当我运行游戏时,背景是黑色的,我已经尝试了3种方法来改变背景,但它仍然是黑色的。我的场景代码是

if let view = self.view as! SKView? {
   // Load the SKScene from 'GameScene.sks'
   let scene = GameScene(size: view.frame.size)
   scene.scaleMode = .aspectFill
   view.presentScene(scene)

   view.ignoresSiblingOrder = true
   view.showsFPS = true
   view.showsNodeCount = true
}

我想用这个替换黑色背景:

background

有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

GameScene.swift文件中,将以下代码放入didMove(to:)方法:

self.backgroundColor = UIColor(red: 199.0/255.0, green: 246.0/255.0, blue: 248.0/255.0, alpha: 1.0)

另外,请确保您尚未以其他方式设置背景色。

答案 1 :(得分:0)

如果您要将图像作为背景,请创建一个SKSpriteNode对象,其参数将在assets.xcassets文件夹中包含图像名称。

如果您的背景没有填满整个屏幕,请使用setScale(乘数)功能将其放大。分辨率可能会受到影响,具体取决于图像的分辨率/开始时的分辨率。

然后使用addChild(SKSpriteNode)函数添加SKSpriteNode。理想情况下,在didMove(to:view)函数中执行最后一部分。