如何在GameScene之外创建更多SKScene

时间:2015-12-17 06:14:16

标签: ios swift sprite-kit skscene

我试图创建一个新的SKScene子类" MainScene"就像一个苹果创造了GameScene。

除了我的" GameScene"我想创建更多场景。但它不起作用。

下面是我的子类代码。

MainScene:

import SpriteKit
#if !os(iOS)
import AppKit
#endif

class MainScene : SKScene {

    override func didMoveToView(view: SKView) {

        backgroundColor = UIColor.blueColor()

       }

}

MainSceneViewController:

import UIKit
import SpriteKit

class MainViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        if let scene = MainScene(fileNamed:"MainScene") {
            // Configure the view.
            let skView = self.view as! SKView
            //skView.showsFPS = true
            //skView.showsNodeCount = true

            /* Sprite Kit applies additional optimizations to improve rendering performance */
            skView.ignoresSiblingOrder = true
            skView.showsPhysics = true

            /* Set the scale mode to scale to fit the window */
            scene.scaleMode = .AspectFill

            skView.presentScene(scene)
        }
    }

enter image description here 错误:"无法转换类型' UIView' (0x1097f2b20)到' SKView' (0x108a4cad0)"

2 个答案:

答案 0 :(得分:4)

除了SKScene

之外,还要创建更多GameScene
  • 转到New File
  • 选择Coca Touch Class
  • 点击Next
  • 子类:手动输入SkScene
  • 创建
  • 导入SpriteKit

答案 1 :(得分:3)

创建新场景时,您需要实际创建一个新的场景文件,而不仅仅是文件背后的代码。

要创建新的场景文件,请转到文件,新建,文件,然后在您的部分转到iOS,SpriteKit场景。这将创建您需要的sks文件。

编辑:

如果您收到错误Could not cast value of type 'UIView' to 'SKView',这是因为在您的故事板中,您的ViewControllers主视图没有自定义的SKView类。在故事板文件中,打开视图控制器,单击该控制器的视图,确保右侧面板可见,然后选择身份检查器选项卡(可能是左起第3个,看起来像一个标志或一个带有窗口)。在Custom Class下,查找类文本框,然后输入SKView