孙广东 2016.5.21
为什么我游戏包这么大?
为什么在我手机上的发热量这么严重?
为什么我的游戏加载时间如此之高?
如何减少我游戏包的大小?
有很多东西是我们可以关注的,让我们看到什么占用最大。要进行检查,首先我们需要打开Editor Log。
如果你不知道如何打开Editor Log访问以下链接 ︰
http://docs.unity3d.com/Manual/LogFiles.html
Unity的官方文档中描述:
"该日志提供 Assets 类别分列的摘要,然后列出所有的每个 Assets 占用大小的顺序。通常情况下,事情像纹理、 音效和视频会占用了大多数存储空间,而脚本、 场景和着色器往往可以忽略不计。"
这是清晰可见从下面的图片 ︰
此数据实际上是从一个2D 游戏截取的。如上所示,Textures/Graphics 占用了占用最大!
因此,GraphicsCompression(图形压缩 最应该重视)。
那么,什么是纹理压缩?
Wiki的定义是:
纹理压缩 是一种专为在三维计算机图形渲染系统中存储纹理而使用的图像压缩技术。与普通图像压缩算法的不同之处在于,纹理压缩算法为纹素的随机存取做了优化。https://zh.wikipedia.org/zh-cn/%E7%BA%B9%E7%90%86%E5%8E%8B%E7%BC%A9
- 最受欢迎的压缩的格式,如PNG和JPG (我们通常使用在我们的游戏中) 不能直接由 GPU 解码。因此,首先,他们需要将它们复制到 GPU 内存之前解压缩。解压缩的纹理需要时间,导致增加加载时间。
- 更好的选择是使用硬件加速格式。这些格式是有损,但是有刚刚说的GPU优势。
- 这意味着,他们不需要复制之前解压缩 和 减少加载时间,因为硬件优化, 提高性能。
- 有许多类型的压缩格式,