SKSpriteNode在GameScene中消失

时间:2018-03-20 08:56:50

标签: ios swift xcode sprite-kit skspritenode

我在swift中遇到spritekit的一些问题。

我正在密切关注在线教程(将不同的教程合并到一个项目中),当我意识到我的SKSpriteNodes(我的"播放器"和#34;敌人")有时 会丢失。

我的情况有点类似于这个用户的问题here,但我认为我的问题不在于大小。

任何人都可以开导我吗?谢谢!

这是我的代码。

enddate+1

2 个答案:

答案 0 :(得分:0)

你的精灵没有出现的问题是你的对象都没有设置zPosition。您需要按照您希望它们在场景中显示的方式对对象进行分层。

例如......

background.zPosition = 1
player.zPosition = 1
enemy.zPosition = 1
bullet.zPosition = 2
scoreLabel.zPosition = 100

在我看来,你不应该使用计时器来生成你的敌人。 Spritekit具有内置于更新功能中的自己的计时功能。你已经用它来控制背景的时间。

您的问题中有很多代码,您需要查看我是如何根据您的问题的相关代码量身定制代码的。在您的问题中包含所有代码实际上使您不太可能获得所需的帮助或答案,因为更难以通过所有代码来弄清楚发生了什么。在你的问题代码中也不要包含这么多空格,滚动数百行,即使它们中的很多都是空格也是非常繁琐的。

答案 1 :(得分:0)

没有意识到zPosition的重要性,因为我的项目在某些时候完全出现在屏幕上。在各自的位置添加了以下内容,它们会间歇性地消失。

player.zPosition = 3
scoreLabel.zPosition = 100
enemy.zPosition = 3
bullets.zPosition = 2
backdrop.zPosition = 1
shot.zPosition = 3