ios - 更改 spritekit swift 3 中的初始场景

标签 ios swift sprite-kit skscene

如何在新的 xcode3 中更改初始场景?我找到了很多说明,但所有说明都适用于此代码:

extension SKNode {
  class func unarchiveFromFile(file : String) -> SKNode? {
    if let path = NSBundle.mainBundle().pathForResource(file, ofType: "sks") {
        var sceneData = NSData(contentsOfFile: path, options: .DataReadingMappedIfSafe, error: nil)!
        var archiver = NSKeyedUnarchiver(forReadingWithData: sceneData)

        archiver.setClass(self.classForKeyedUnarchiver(), forClassName: "SKScene")
        let scene = archiver.decodeObjectForKey(NSKeyedArchiveRootObjectKey) as! MenuScene
        archiver.finishDecoding()
        return scene
    } else {
        return nil
    }
}

但是新的 Xcode 项目,GameViewController 不包含这部分代码,当我尝试复制时,它不起作用。所以我制作了 MainScene.swift 和 MainScene.sks 并想将这些场景设置为 main。接下来是什么?

谢谢!!!!

最佳答案

如果您为场景布局使用 .sks 文件,请使用以下代码。

override func viewDidLoad() {

    super.viewDidLoad()

    if let view = self.view as! SKView? {

        // Load the SKScene from 'MainScene.sks'
        if let mainScene = MainScene(fileNamed: "MainScene")  {

            // Set the scale mode to scale to fit the window
            mainScene.scaleMode = .aspectFill
            // Present the scene
            view.presentScene(mainScene)
        }

        view.showsFPS = true
        view.showsDrawCount = true
        view.showsNodeCount = true
        view.showsPhysics = true
        view.showsDrawCount = true
    }
}

关于ios - 更改 spritekit swift 3 中的初始场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42656119/

相关文章:

ios - iPhone X 缩放问题,我们可以在不更新应用程序的情况下将现有应用程序缩放到全屏模式吗

swift - 如何消除 UIButton 图像和 UIButton 边框之间的填充?

ios - 横向模式下 UITextField 中间出现奇怪的黑条

ios - SKSpriteNode定位

ios - 如何在 Sprite Kit 中预加载纹理?

ios - XCTest - 等待谓词失败

ios - 创建不打开应用程序的主屏幕快速操作?

swift - SKScene View 渲染问题(见图)

ios - Swift iOS 中的 GMSCircle 不规则边框

swift - 三元条件在 SwiftUI 中不起作用