繁体   English   中英

SpriteKit 在两个场景之间转换或移动,使用 GameScene 创建?

[英]SpriteKit Transition or move between two Scenes, creating with GameScene?

我有一个 SpriteKit 应用程序。 我想简单地从一个视图 class 切换到另一个视图。 在这种情况下,我只想在应用程序中从一个屏幕切换到另一个屏幕,以便您可以显示由按钮按下或代码中的某些其他逻辑触发的不同内容。

我在创建第二个 GameScene 时遇到了问题,因为我遇到了一些错误。 有人可以提供一个从一个场景切换到另一个场景的例子。 这是我试图开始工作的一些代码:


class GameScene: SKScene {
    var player = SKSpriteNode()
    var ground2 = SKSpriteNode()
// The main scene that loads just fine and runs. However I want to transition to another scene, the desert scene. With logic from here to there.
}

class DesertScene : SKScene {
    // inserting my variables, my logic, CGPoints, you get it.
}
func goToScene(newScene: SceneType) {
    var sceneToLoad:SKScene?

    switch newScene {
    case SceneType.GameScene:
        sceneToLoad = GameScene(fileNamed: "GameScene.swift")
    case SceneType.TheWoods:
        sceneToLoad = TheWoods(fileNamed: "TheWoods")
    case SceneType.DesertScene:
        sceneToLoad = DesertScene(fileNamed:"DesertScene")
    }
}

我不确定如何在 SKS 文件之间进行转换,或者是否应该创建一个新的 swift 文件并让它访问 GameScene.swift

如果您尝试使用相同的视图 controller 启动新的 SKScene,则整个以前的 SKS 将被泄露。 我以前遇到过这个问题。

在你的情况下,你想开始一个新的 GameScene。 正如您在问题中所建议的那样,我建议您创建一个新的 swift 文件并初始化该游戏场景。

在这里查看我的帖子,它解释了为什么不应该在同一个 VC 中初始化一个新的 SKScene。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM