如何在SpriteKit中正确显示“暂停”屏幕

问题描述 投票:0回答:1

我很抱歉这个问题听起来很“愚蠢”,但这是我第一次使用SpriteKit,特别是在视频游戏上。

这是我的问题:我正在创建游戏的原型,我想实现一个“暂停”系统。我已经成功地暂停了元素physicsWorld.speed = 0,阻止了计时器等。我现在需要的是实现以下目标:

enter image description here

带有一些按钮的黑色叠加图像。每个场景都已使用编辑器.sks创建,我也创建了pauseScene.sks。我的问题是:我做对了吗?有什么方法可以覆盖多个场景,或者我应该采用其他方法?

swift xcode sprite-kit
1个回答
0
投票

一个简单的答案是您正在寻找SKView.isPaused属性,但这并不完全全面。设置为true时,它将暂停SKAction和物理处理,但不会停止场景的update方法或其他可能的交互。

更完整的答案是,暂停可能是您可能希望提供的自定义实现,以具有特定游戏所需的交互和连续动画的正确组合。您可以将SKView.isPaused用作该概念中的工具,只是知道开和关之间没有粒度。

[从那里,您将要添加一个具有较高zPosition的节点以用于ui,或者在您要定位的任何环境(iOS的UIView / macOS的NSView等)上添加视图处理您希望玩家进行的任何暂停互动。

© www.soinside.com 2019 - 2024. All rights reserved.