我有一个应用程序,它是用团结2d制作的。将它导出到android它的重量为100MB。将它导出到iOS重量为1.2GB(ipa为104MB),但iTunes内部的重量为1.2GB,这太多了。
我们尝试减小纹理大小,但随后,图像在设备上变得非常像素化。
有关如何解决此问题的任何想法?
以下是.ipa未压缩显示获取所有MB的内容:
sharedassets4.assets(只是那个文件,获得342 MB)
答案 0 :(得分:2)
iTunes显示安装大小,因此如果您解压缩您的ipa文件,您将获得1.2GB的安装。 Android上的安装大小也可能那么大。你检查过了吗?
通常在使用True Color或16位压缩纹理时会发生这种情况,并且zip压缩效果非常好,即在具有相同颜色的大量像素的纹理上。
可能的解决方案
1)如果您的纹理不需要透明度,您可以切换到压缩纹理(iOS上的PVRTC和Android上的ETC)。但是如果要求透明度,你不应该切换到压缩,因为透明的PVRTC看起来很丑陋而且ETC不支持alpha。
2)我不知道你的项目是否可行,但你可以尝试通过使用色调或切片来减少纹理量。
更新1
我目前遇到类似的情况,事实证明。
--------------------------------------------
| Platform Android iOS |
|--------------------------------------------|
| APK/IPA 380MB 400 MB |
| unzipped APK/IPA 1.19 GB 1.13 GB |
| install size on device 380MB 1.15 GB |
--------------------------------------------
区别在于 iOS在安装时完全解压缩IPA文件和
Android在运行时直接从APK中读取,所以你可以说,这不是真正安装的,但它绝对是另一种安装类型。
答案 1 :(得分:0)
检查纹理导入选项。您可以为Android导入和iOS导入设置不同的选项。
iOS导入通常是PVRTC,它更喜欢大小和平方(256x256,512x512等)2的幂的纹理。
听起来我可能将iOS设置为非压缩格式。
答案 2 :(得分:0)
你压缩了你的网格吗?还剥去位代码。我发现另一个有用的东西是压平纹理和去除图层。还将索引颜色计数更改为较低的数量。对于1024x1024,它可以达到170KB,如果你正确调整它。
同时删除法线贴图,并更改着色器。它不会看起来像粒度,但它会减小尺寸。您可能还希望将纹理卸载到Assets Server,并在运行时获取纹理,而不是在捆绑资产中预加载纹理。