0

我正在创建一个通用的 iOS 游戏,并试图提出一个好的系统来共享纹理。就我而言,所有视网膜 iPhone 纹理的大小与我的 iPad 纹理完全相同。现在我有 iPad 和 iPhone 内容的单独目录,这是非常多余的。我还想在我的项目中包含 iPad3 内容。

我的想法是为每种纹理提供三个不同的版本:

texture - non-retina iPhone
texture@2x - retina iPhone / non-retina iPad
texture@2x@2x - retina iPad

当 iPhone 想要加载纹理时,我会将其指向基础纹理。当 iPad 想要加载纹理时,我只需在其上附加一个 @2x 即可。这个方案是否也允许 iPad 3 找到纹理@2x@2x?

4

2 回答 2

0

iPad 视网膜和 iPhone 视网膜不需要单独的图形,它们都是 @2x

于 2012-05-15T02:23:48.473 回答
0

我测试了这项技术,它工作得很好。我没有 iPad 3 来直接测试 texture@2x@2x 是否可以工作。但是,我拍摄了一张非视网膜图像并将其命名为 image@2x。然后我制作了一个视网膜版本并命名为 image@2x@2x。iPhone 4 加载了@2x@2x 版本,认为它是视网膜,一切都很好。我认为 iPad 3 可以毫无问题地做同样的事情。通过共享所有冗余内容,我的通用应用程序的大小从 44MB 减少到了 29MB!

于 2012-05-16T02:40:09.913 回答