SKSpriteNode 在真实 iPhone 上显示出不同的大小

SKSpriteNodes are showing up different sizes on a real iPhone

我正在做一个应用程序,最近突然出现了一个问题。 当我 运行 我的应用程序在我的 iPhone 上时(过去几周我一直做得很好)图像以完全不同的尺寸显示。

例如: Xcode模拟器上的开始按钮是xScale 2.0f。在 iPhone 上,它显示大约是该大小的一半。我将所有图片保存在一个 .atlas 文件中,它们都是 .png。我也在使用 sprite kit,我使用的 iPhone 是 iOS 7.

这是我得到的: Unwanted result (As is on iPhone)

这是我想要的: Desired Result (As is on simulator)

这也发生在整个应用程序和其他精灵节点上。有谁知道我该如何解决这个问题?在此先感谢您,如果不是 10 次重复限制,我会发布屏幕截图。

编辑: 通过创建所有图像的@2x 版本,我现在已经使大部分图像正常工作。

但是 iPhone 上还有一张图 太大。感谢您到目前为止的所有帮助,有谁知道如何在 iPhone 上缩小一张图片?

您的 PNG 文件需要标记为 2x 或 3x。这是 Apple 计算视网膜屏幕的方式。

"ImageFileName@2x.png" 对于 Iphone 4,5,6

"ImageFileName@3x.png" 对于 Iphone 6 加

如果您没有扩展,Apple 会假设它应该将您的图像放大 2 或 3 倍,以解决视网膜显示器中的额外像素问题。如果您添加 @2x 或 @3x,Apple 会假设您提供的图像已经考虑了视网膜像素数。