Swift: Public Skscene 不显示文件名?

Swift: Public Skscene not presenting with filenamed?

好的,我在 Swift 游乐场工作,不知道如何呈现另一个 class 的 SkScene。到目前为止,我已经将这个 SKScene 文件 GameScene.swift 放在我的 Sources 文件夹中并使其成为 public.

在我的主要 playground 文件中,我尝试过:

import PlaygroundSupport
import SpriteKit
import XCPlayground
import Foundation


let frame = CGRect(x: 0, y: 0, width: 500, height: 600) //view size
let view = SKView(frame: frame)

let scene = GameScene(fileNamed: "GameScene")
//scene.backgroundColor = NSColor.blue


view.presentScene(scene)
view.showsFPS = true;
PlaygroundPage.current.liveView = view

连同我能在堆栈溢出中找到的任何其他答案。没有任何效果 - 游乐场时间轴只是一片空白的灰色,这是输出:

这不可能吗?

是的,我可以,但目前您的 Gamscene 对象为零。这是因为 GameScene(filenamed: "" ) 仅在您拥有场景生成器时才有效。希望您不要在 Xcode.

中使用

相反。使用

GameScene(size: CGSize)

并确保使用

创建游戏场景
    class GameScene : SKScene {
       override sceneDidLoad() {
           super.sceneDidLoad()



    }

 }

之后从视图中展示您的场景

    let sceneSize = CGSize(width: 250, height: 550)
    let scene = GameScene(size: sceneSize)
    let viewRect = CGRect(x: 0, y: 0, width: 250, height: 550)
    let skView = SKView(frame: viewRect)
    skView.presentScene(scene)

PlaygroundPage.current.liveView = skView

这是一个让你入门的例子^^