在 SpriteKit 游戏中设置为默认值的新 SKScene 结果为空白
New SKScene Set as Default in SpriteKit Game Turns Out Blank
我有 2 个 SKScene。
- 游戏场景
- WelcomeScene.swift
我希望我的屏幕首先加载 "WelcomeScene" 而不是默认的 GameScene.Thus,我相应地编辑了 "GameViewController.swift"。但是,我得到的只是一个空白屏幕,无法找到哪里出了问题。
这是我在 "GameViewController" 中的代码。
override func viewDidLoad() {
super.viewDidLoad()
if let view = self.view as! SKView? {
if let scene = SKScene(fileNamed: "WelcomeScene") {
scene.scaleMode = .aspectFill
view.presentScene(scene)
}
view.ignoresSiblingOrder = true
view.showsFPS = true
view.showsNodeCount = true
}
}
如果您在场景编辑器中创建了相应的 SKS 文件,那么您可以像这样加载场景...
// Load the SKScene from WelcomeScene.sks'
if let welcomeScene = WelcomeScene(fileNamed: "WelcomeScene") {
welcomeScene.scaleMode = .aspectFill
view.presentScene(welcomeScene)
}
如果您没有在场景编辑器中创建相应的 SKS 文件,而是希望加载在代码使用中创建的场景...
welcomeScene= WelcomeScene(size: skView.bounds.size)
welcomeScene.scaleMode = .aspectFill
skView.presentScene(welcomeScene)
我有 2 个 SKScene。
- 游戏场景
- WelcomeScene.swift
我希望我的屏幕首先加载 "WelcomeScene" 而不是默认的 GameScene.Thus,我相应地编辑了 "GameViewController.swift"。但是,我得到的只是一个空白屏幕,无法找到哪里出了问题。
这是我在 "GameViewController" 中的代码。
override func viewDidLoad() {
super.viewDidLoad()
if let view = self.view as! SKView? {
if let scene = SKScene(fileNamed: "WelcomeScene") {
scene.scaleMode = .aspectFill
view.presentScene(scene)
}
view.ignoresSiblingOrder = true
view.showsFPS = true
view.showsNodeCount = true
}
}
如果您在场景编辑器中创建了相应的 SKS 文件,那么您可以像这样加载场景...
// Load the SKScene from WelcomeScene.sks'
if let welcomeScene = WelcomeScene(fileNamed: "WelcomeScene") {
welcomeScene.scaleMode = .aspectFill
view.presentScene(welcomeScene)
}
如果您没有在场景编辑器中创建相应的 SKS 文件,而是希望加载在代码使用中创建的场景...
welcomeScene= WelcomeScene(size: skView.bounds.size)
welcomeScene.scaleMode = .aspectFill
skView.presentScene(welcomeScene)