问题标签 [sktransition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1061 浏览

ios - SKTransition 在 Swift 中不起作用

我有一个用 Swift 编写的非常简单的 SpriteKit 游戏,其中有两个场景,我试图在它们之间进行转换。此代码完美运行:

当我用以下代码替换上面的代码行时,问题就来了:

当我这样做时,什么也没有发生(当前场景仍然在屏幕上)。我尝试了几种不同的过渡,但总是得到相同的结果。

有什么想法吗?

0 投票
1 回答
155 浏览

ios - SKTransition 后未出现所有级别

我正在尝试在游戏菜单和第一级之间进行转换。但不是所有的Level1(它是通过使用Level1.sks文件(这里我设计了一个关卡)Level1.swift(这里我已经创建了我的“英雄”等))在屏幕上出现的只是英雄,但没有在 Level1.sks 中设计的位置。

我该如何解决这个问题?

0 投票
1 回答
16 浏览

initialization - 通过 SKTransition 问题的关卡

在过渡到新场景时(我正在为新场景调用 self 的实例),我试图将级别编号设置为新实例的属性。

问题是当第一次创建实例时 initWithSize 在我可以设置 level 属性之前被调用,并且我只能在实例创建之后设置 level 属性,因此在第一次调用 initWithSize 时属性级别总是设置为默认值(0)。

InitWithSize:在此处检查级别编号并加载

我发现的唯一方法是调用 initWithSize 两次,这会耗尽内存并且很混乱。任何反馈表示赞赏。

0 投票
1 回答
54 浏览

swift - 场景更改错误 - 我该如何正确操作?

我只是想知道为什么我在这段代码中收到错误?它在调用中显示额外的参数“大小”。

非常感谢

0 投票
2 回答
1480 浏览

swift - SpriteKit 场景过渡良好实践

我正在使用 SpriteKit 和 Swift 编写游戏,并且遇到了内存问题。

我的游戏的布局是这样的,GameViewController (UIViewController) 在 vi​​ewDidLoad 屏幕中呈现第一个 SKScene (levelChooserScene)。这个场景只是显示了一堆按钮。当用户选择一个按钮时,场景然后使用 skView.presentScene 转换到正确的场景,当关卡完成时,该场景然后转换回 levelChooserScene 并且游戏准备好供用户选择下一个关卡。

问题是当转换回 levelChooserScene 发生时,分配给游戏场景的内存没有被释放,所以在只选择了几个级别后,我开始收到内存错误。

我的设计在从 SKScene 过渡到 SKScene 时是否正确,还是应该每次都返回到 GameViewController,然后从那里过渡到下一个 SKScene?

我在这里找到了一些帖子说我应该在场景之间调用 skView.presentScene(nil),但我对如何或在哪里实现它感到困惑。

我只是想从一个 SKScene 过渡到另一个 SKScene 并将传出场景中使用的内存返回给系统。

这是我如何实现 SKScene 的示例:

0 投票
1 回答
146 浏览

swift - 如何在不同的场景中显示分数

我正在制作一个游戏,我有一个计算分数并将其显示在屏幕上的函数。当游戏结束时,它会过渡到一个新的场景,(游戏结束屏幕)。我想知道在第二个场景转换后我可以使用什么方法来显示我的分数。我的代码是:

0 投票
1 回答
313 浏览

swift - 粒子效果后如何从屏幕上删除精灵节点

我已将粒子效果附加到发生碰撞时要“爆炸”的节点,从而结束游戏。然后我希望场景更改为游戏结束场景。如果输出场景暂停,则粒子效果不会发生,但现在我将其设置为不暂停,碰撞继续发生,并且游戏结束场景永远不会出现,因为游戏会继续返回输出场景。为了克服这个问题,我想我可以添加: rocket.removeFromParent()这样就不会再发生碰撞,但这意味着粒子效果不会发生。有什么办法可以让粒子效应发生,然后火箭被移除,这样我就可以同时拥有这两者了?我希望这是有道理的!

0 投票
1 回答
304 浏览

macos - SKTransitions 从一个场景到另一个场景很慢

我正在编写一个 OS X SpriteKit 应用程序。我正在从主菜单场景过渡到主场景,但过渡大约需要 3 秒才能开始。在我的主要场景中,我有一个以编程方式生成的屏幕钢琴。大约有 55 个精灵需要加载。有什么办法可以加快这个速度吗?

在我的主要 SKSceneLevelScene中,这是该didMoveToView方法所调用的内容:

0 投票
0 回答
369 浏览

ios - SKTransition 问题和场景加载

所以我目前正在创建一个游戏。我有许多场景:菜单、设置、gameScene 和 GameOverScene。

几乎所有场景之间的过渡都没有问题,我用来过渡的代码是:(例如,用于菜单到 GameScene)

但是,我的 GameScene 到 GameOverScene 非常有问题。通常会有很长的停顿。

GameOverScene 的全部内容是:

因此,我认为这不太可能是过渡延迟的原因。

我用来调用“游戏结束”的代码是:

我已经尝试过使用延迟,例如使用:

给时间加载,但这不起作用。

我也试过使用'pausesOutgoingScene'和pausesIncomingScene'无济于事。

我终于尝试使用以下方法将当前场景减慢到 0.0:

尽管这只是阻止了代码的进一步发展。

我的问题是: 1. 在我的过渡中,有什么我没有考虑的非常明显的事情吗?2.有没有办法提前加载所有场景,我相信这可能只会提供微小的改进,但它绝对是我还没有看过的一个领域。

0 投票
1 回答
112 浏览

skview - SpriteKit:使用过渡呈现初始场景

我在我的游戏场景之间创建了多个过渡,所以我不确定为什么这段代码不起作用。

在我的 GameViewController 中,我只是将我的 TitleScene 设置为下一个场景,但我希望它淡入。我在 touchesBegan 中成功地做到了这一点。

这是代码: