【发布时间】:2020-08-04 17:56:10
【问题描述】:
想弄清楚这一点我快疯了。我有一个游戏,我有一段时间没玩了。我将它加载到 Xcode 并从 4 更新到 swift 5,一切正常。游戏为背景元素使用了许多更大但经过优化的图形(PNG 大约 1000x1500 像素,但通过有限的调色板优化到 120k-500k 的文件大小)。 自更新以来,大多数这些背景元素(即 SKSpriteNode)在屏幕上显示为纯白色精灵。一些最小的正确显示。 我在 stackExchange 上找不到遇到相同情况的人。有没有其他人经历过这个?任何人都知道解决方案。
有些精灵是动态添加的,有些是使用场景编辑器放置在 SKSceneNode 中的。
如果我打印不工作的 SKSpriteNode,我会得到以下信息:
名称:'(null)' 纹理:['BG_Building_06.png' (218 x 1939)] 位置:{0, 0} 比例:{1.00, 1.00} 大小:{218, 1939} 锚点:{0.5, 0.5} 旋转:0.00
如果我打印 SKSpriteNode.texture 我得到:
可选('BG_Building_06.png' (218 x 1939))
我还尝试将所有源 png 的大小减半,这解决了大多数问题(但不是一个理想的解决方案),所以看起来这肯定是精灵尺寸的问题。奇怪的是,这在旧版本中没有问题,但现在变成了一个问题。
我真的很想解决这个问题。
谢谢。
【问题讨论】:
-
你能放一个代码示例来复制错误吗?
-
可能是压缩的有限彩色 png。它很可能根本无法帮助您。
标签: ios swift xcode sprite-kit