Swift 在iPhone6plus和iPhone6splus模拟器中,SpriteKit节点看起来更小

Swift 在iPhone6plus和iPhone6splus模拟器中,SpriteKit节点看起来更小,swift,xcode,sprite-kit,Swift,Xcode,Sprite Kit,在iPhone6plus和6splus模拟器中,我的游戏场景中的节点看起来比它们应该做的要小得多(即使屏幕非常适合——没有黑条、空白等等)。奇怪的是,我的MenuScene和TutorialScene(在同一个模拟器中)中的节点都是正常大小的。我的应用程序在所有其他模拟器(iPadAir、iPadPro、iPhone5、5s、6、6s)上都能完美运行(所有场景中都有正常大小的节点)。 P 我试过以下几件事: 我为所有尺寸创建启动映像-->应用程序内图标和启动映像,我将启动映像迁移到资产目录--

在iPhone6plus和6splus模拟器中,我的游戏场景中的节点看起来比它们应该做的要小得多(即使屏幕非常适合——没有黑条、空白等等)。奇怪的是,我的MenuScene和TutorialScene(在同一个模拟器中)中的节点都是正常大小的。我的应用程序在所有其他模拟器(iPadAir、iPadPro、iPhone5、5s、6、6s)上都能完美运行(所有场景中都有正常大小的节点)。 P 我试过以下几件事:

  • 我为所有尺寸创建启动映像-->应用程序内图标和启动映像,我将启动映像迁移到资产目录-->删除“启动屏幕文件”中的行-->不起作用

  • 我尝试了上面相同的方法,但这次我删除了Launch Screen.storyboard(如果我已经为所有尺寸的iPhone创建了启动图像,为什么我需要它?)无法工作

  • 我删除我的启动图像并恢复启动屏幕。情节提要(基本上重置所有内容)-->不起作用

我的iPhone 6 Plus和iPhone 6s Plus模拟器有什么问题?

更新:问题已解决!(但我还是不知道怎么做)

在所有模拟器上测试我的应用程序后,我发现只有iPhone 6+和6s+的节点看起来更小。这些设备使用3倍的图像。所以我觉得我的3x图像有问题

检查后,我没有发现这些图像有任何错误(它们与1x和2x图像完全相同,只是它们的名称有@3x后缀)

所以我删除了图像中的所有3x图像。问题解决了

我仍然想知道这是如何解决我的问题的。如果您能解释,请发表评论:)

这可能会有所帮助

“资源”文件夹有1个、2个和3个图像。如果在1x映像中仅设置了一个映像,则所有设备都将使用该映像并适当缩放

如果设置了2x和3x图像,则设备将使用这些图像,但不会缩放它们

2x图像应该是1x图像的两倍大。 如果1x图像为100px 100px,则2x图像应为200px x 200px

3x图像应为1x图像的三倍大。 如果1x图像为100px 100px,则3x图像应为300px 300px

因此,在所有1x、2x和3x图像框中设置相同的图像。因此,该设备将根据其屏幕大小使用合适的尺寸,这将使其在较大的屏幕(iPhone 6s)上看起来更小,因为您没有缩放它们


您可以在iOS人机界面指南中了解更多信息

您能澄清什么是游戏场景等吗?它们是SpriteKit场景、SceneKit场景还是其他场景?它们都是SpriteKit场景进行基本调试:打印视图大小、打印场景大小、打印有问题的sprite大小及其纹理大小。检查有问题的精灵上是否存在比例因子。清除模拟器内容和缓存(查看模拟器菜单)。