如何在 SpriteKit 中重新加载 GameScene

吉比诺德

我有一个简单的游戏,时间到了游戏就结束了。我有一个重新启动按钮,目前只是重新加载 GameScene,但由于某种原因,我的节点出现在屏幕左侧的一半和一半。我仍然可以使用屏幕的全部空间来玩游戏。

下图显示了工作时的游戏、结束游戏状态以及重新加载 GameScene 后的状态。

我不确定如何解决这个问题或提供什么代码。

这是我重新加载 GameScene 的函数:

func goToGameScene(){
    let gameScene:GameScene = GameScene(size: self.view!.bounds.size) 
    let transition = SKTransition.fade(withDuration: 1.0)
    gameScene.scaleMode = SKSceneScaleMode.fill
    self.view!.presentScene(gameScene, transition: transition)
}

游戏应该是什么样子

结束游戏

After reloading the GameScene

年轻的汤米

代替:

gameScene.scaleMode = SKSceneScaleMode.fill    

和:

gameScene.scaleMode = .aspectFit

或者:

gameScene.scaleMode = .aspectFill  

你也可以完全复制 GameViewController 代码,这样你就会得到这样的东西:

if let view = self.view {
            // Load the SKScene from 'GameScene.sks'
            if let scene = SKScene(fileNamed: "GameScene") {
                // Set the scale mode to scale to fit the window
                scene.scaleMode = .aspectFit

                // Present the scene
                view.presentScene(scene)
            }

            view.ignoresSiblingOrder = true

            view.showsFPS = true
            view.showsNodeCount = true
        }

只需将该代码放在要重新加载场景的位置即可。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在GameViewController.swift中加载不同于GameScene.swift的spritekit文件?

来自分类Dev

如何在Swift中使用SpriteKit从GameViewController中的GameScene中调用函数?

来自分类Dev

在GameScene中显示UIAlertController(SpriteKit / Swift)

来自分类Dev

SpriteKit模板中GameScene.swift和GameScene.sks文件之间的关系是什么

来自分类Dev

Swift SpriteKit:在GameScene中访问UIViewController的最佳实践

来自分类Dev

如何从GameScene.swift中关闭ViewController?

来自分类Dev

Swift,如何调用GameScene扩展中的函数?

来自分类Dev

在 Unity3d 中重新加载 GameScene 而不重新加载 UIScene

来自分类Dev

如何在Spritekit中创建渐变?

来自分类Dev

如何在Spritekit中创建风效果

来自分类Dev

如何在SpriteKit中模糊场景?

来自分类Dev

如何在Spritekit中创建SKActions数组

来自分类Dev

如何在** spriteKit **中添加UIView?

来自分类Dev

如何在SpriteKit中检测触摸位置?

来自分类Dev

如何在SpriteKit中更改动作

来自分类Dev

如何在** spriteKit **中添加UIView?

来自分类Dev

如何从GameScene刷新GameViewController?

来自分类Dev

GameScene中的UIActivityViewController

来自分类Dev

如何在我的GameScene.m文件中添加一个actionRecognizer?

来自分类Dev

SpriteKit GameScene函数在被按钮调用后不会添加SKSpriteNode

来自分类Dev

在Swift中使用SpriteKit不能多次初始化GameScene

来自分类Dev

SpriteKit:从GameScene.swift到GameViewController.swift的var吗?

来自分类Dev

从 AppDelegate 调用 GameScene 方法(Swift 3、SpriteKit、Xcode 8)

来自分类Dev

重新启动GameViewController / GameScene

来自分类Dev

如何在SpriteKit中检测冲突中涉及的节点数

来自分类Dev

如何在AngularJS中重新加载指令?

来自分类Dev

如何在jQuery中重新加载multiDatesPicker

来自分类Dev

如何在Ubuntu中重新加载终端?

来自分类Dev

如何在WPF中重新加载DataGrid

Related 相关文章

  1. 1

    如何在GameViewController.swift中加载不同于GameScene.swift的spritekit文件?

  2. 2

    如何在Swift中使用SpriteKit从GameViewController中的GameScene中调用函数?

  3. 3

    在GameScene中显示UIAlertController(SpriteKit / Swift)

  4. 4

    SpriteKit模板中GameScene.swift和GameScene.sks文件之间的关系是什么

  5. 5

    Swift SpriteKit:在GameScene中访问UIViewController的最佳实践

  6. 6

    如何从GameScene.swift中关闭ViewController?

  7. 7

    Swift,如何调用GameScene扩展中的函数?

  8. 8

    在 Unity3d 中重新加载 GameScene 而不重新加载 UIScene

  9. 9

    如何在Spritekit中创建渐变?

  10. 10

    如何在Spritekit中创建风效果

  11. 11

    如何在SpriteKit中模糊场景?

  12. 12

    如何在Spritekit中创建SKActions数组

  13. 13

    如何在** spriteKit **中添加UIView?

  14. 14

    如何在SpriteKit中检测触摸位置?

  15. 15

    如何在SpriteKit中更改动作

  16. 16

    如何在** spriteKit **中添加UIView?

  17. 17

    如何从GameScene刷新GameViewController?

  18. 18

    GameScene中的UIActivityViewController

  19. 19

    如何在我的GameScene.m文件中添加一个actionRecognizer?

  20. 20

    SpriteKit GameScene函数在被按钮调用后不会添加SKSpriteNode

  21. 21

    在Swift中使用SpriteKit不能多次初始化GameScene

  22. 22

    SpriteKit:从GameScene.swift到GameViewController.swift的var吗?

  23. 23

    从 AppDelegate 调用 GameScene 方法(Swift 3、SpriteKit、Xcode 8)

  24. 24

    重新启动GameViewController / GameScene

  25. 25

    如何在SpriteKit中检测冲突中涉及的节点数

  26. 26

    如何在AngularJS中重新加载指令?

  27. 27

    如何在jQuery中重新加载multiDatesPicker

  28. 28

    如何在Ubuntu中重新加载终端?

  29. 29

    如何在WPF中重新加载DataGrid

热门标签

归档