2

在 iPhone 6+ 模拟器上运行项目时,我注意到模拟器无法获取正确的图像。使用@2x 图像代替@3x。

我尝试重置模拟器内容和设置,清理项目并从管理器中删除派生数据,但同样的事情仍然发生。

当我在路径的 myapp.app(显示包内容)中查找 myatlas.atlasc 文件夹时:

/Users/username/Library/Developer/Xcode/DerivedData/appname-appspecificgeneratedstring/Build/Products/Debug-iphonesimulator/appname.app

我可以看到 myatlas.atlasc(注意这不是 myatlas.atlas),里面有两个文件而不是三个。有atlas.1.pngatlas.1@2x.png

我想应该有三个文件,一个用于 1@x 图像,一个用于@2x 图像,另一个用于@3x 图像。

第一张图片(atlas.1.png)的内容都是@1x 图片和@3x 图片。atlas.1@2x.png的内容是@2x 图片。

接下来我尝试使用 Texturepacker 为我们正确生成图集。生成的文件有 atlasfilename.1.png、atlasfilename.1@2x.png 和 atlasfilename.1@3x.png。还有一个正确生成的 .plist 文件。我将 atlasc 文件夹添加到我的项目中,并选中了“创建文件夹引用”而不是“创建组”。但是模拟器仍然选择@2x 图像。

然后我尝试制作我自己的名为 HD_atlas.atlas 和 XHD_atlas.atlas 的图集,并根据屏幕比例因子选择正确的图集。在这种情况下,选择了正确的图集,但屏幕上出现了 MissingResource.png。如果我将@3x 图像命名为 image.png 而不是 image@3x.png 并将它们放在 XHD_atlas.atlas 文件夹中,那么会加载@3x 图像,但它会大 3 倍。目前,在解决此问题之前,我最终使用@2x 资产而不是@3x,因为一切看起来仍然相当不错,即使它被放大了。

我想这不应该是这样的,如果有人知道如何让 Spritekit 生成正确的图集或有一些解决方法以使用 @3x 资产,请随时发表建议。

4

0 回答 0