如何在unity3d

时间:2017-10-10 17:13:58

标签: unity3d unity5

我正在使用c#在unity3d中制作一个简单的测试游戏,我的游戏apk的大小是70 MB。我已经降低了每个精灵的分辨率,但它仍然是58 MB,我如何压缩游戏所以apk文件的大小可能最小。

4 个答案:

答案 0 :(得分:2)

除了Unity themselves之后的这篇简短指南外,还有几点需要注意:

  1. 构建时,Unity会删除未使用或依赖的文件。
  2. 纹理,音乐和视频占据了大部分尺寸。理想情况下,声音文件应为.mp3格式(对于非常短的剪辑,则为.wav。)
  3. 我建议您浏览上面的链接并正确分析Editor.log,因为它提供了有价值的信息来修剪构建大小。

答案 1 :(得分:1)

您也可以选择将设备过滤器设置为Arm7。这将排除某些设备,但我相信这个数字很小,它确实最小化了apk大小。 (这位于播放器设置 - >其他设置 - >设备过滤器)。您可以尝试构建并查看它将减少多少并确定它是否值得。

有关设备过滤器的一些信息:http://answers.unity3d.com/questions/971648/device-filter-to-arm-7-only.html

此外,如果您查看编辑器构建文件,您可以找到有关占用构建中大部分空间的信息(这是一个很长的日志,因此您必须搜索正确的部分)。在进行构建之后应该有一个部分,它将列出占用的空间。随后将显示从最大到最小的资产列表,以便您可以识别可能过大的特定资产。

E.g。

Build Report
Uncompressed usage by category:
Textures      81.1 mb    92.0% 
Meshes        0.0 kb     0.0% 
Animations    17.1 kb    0.0% 
Sounds        0.0 kb     0.0% 
Shaders       90.0 kb    0.1% 
Other Assets  549.9 kb   0.6% 
Levels        338.3 kb   0.4% 
Scripts       993.0 kb   1.1% 
Included DLLs 5.1 mb     5.8% 
File headers  33.1 kb    0.0% 
Complete size 88.2 mb    100.0% 

如何查找编辑器文件:https://docs.unity3d.com/Manual/LogFiles.html

答案 2 :(得分:0)

减少图像尺寸的一个最有效和最重要的变化是

将图像大小设置为方形和

设置单位建议像素。(32,64,128,256,512,1024,2048,4096,8192)

如果您的图像尺寸为567x890像素,则将此图像设置为1024x1024像素的背景透明空白图像,并将其另存为png文件。

然后在unity inspector中将此图像设置为精灵并通过精灵编辑器对其进行切片。 此过程将使您的图像大小减少至少20%。

下面给出了示例图片和更改。

之前:分辨率567x890像素,大小1.9MB

之后:分辨率1024x1024像素,大小1.3MB

结果:大小减少0.6MB,差不多32%。

图片文件链接:https://drive.google.com/file/d/0B9zkzr6JdNYlaHhqcDVUSk9KNjA/view

答案 3 :(得分:0)

设置纹理/精灵压缩格式也很好。

查看本网站: https://docs.unity3d.com/Manual/class-TextureImporterOverride.html

大多数纹理压缩格式需要2分辨率(128,256,512,1024,2048)的图像。第4096和8192号决议可能无法在某些Android设备上运行。

例如,使用RGB ETC2压缩在1024x1024分辨率下没有alpha的纹理在内存中占用大约0.5MB。压缩格式为RGB 16bit的图像1280x800需要2MB。