性能优化(1)静态资源优化——音频

  1. 1. 资源的优化
    1. 1.0.1. Assets工作流程:导入——创建——构建——分发——加载
    2. 1.0.2. 关于资源的优化,也从这五步着手
  • 2. 音频资源

  • 参考了B站up Metaverse大衍神君 的视频所做的记录

    资源的优化


    Assets工作流程:导入——创建——构建——分发——加载

    关于资源的优化,也从这五步着手

    • 外部导入资源:模型网格Mesh、纹理、音乐音效、字体动画、视频等。
    • 内部创建资源:Prefab、Animation Controller、Timeline、RenderTexture、ParticleSystem、VFX等
    • 无论哪种资源都需要涉及到Unity导入问题
    • 在不同平台下,合理的资源导入设置与资源规格,可以给应用程序带来较高的效率

    音频资源

    • Force To Mono选项:
      强制将双声道的音频改为单声道。当左右两声道音频完全相同时,开启此选项可以在内容不丢失的情况下,减小内存和大小,尤其是在移动平台
    • 一般来说,尽可能得使用未压缩的wav文件作为音频源文件
    • 移动平台大多数采用Vorbis压缩方法
    • 如果音乐不打算循环也可使用MP3格式
    • 一些操作系统对特定的格式有额外优化,如IOS上可以使用MP3格式
    • 简短常用的音效可以使用ADPCM格式,这种格式可能压缩比不是最好的,但在播放过程中解码速度很快
    • 还需要关注音频文件的采样率
      · 一般移动平台建议设置为22050Hz
      · 通常我们在移动平台都会选择对音质影响最小的最低设置
    • 可以通过Sample Rate Setting选项修改默认的采样频率
    • 越低的采样频率生成的导入文件越小
    • Load Type加载类型 影响的是Unity工作流中的第五步:加载
      · 默认是Decompress On Load,这个选项一般对应音频压缩后,大小小于200KB的音效文件
      · 如果大于200KB,则推荐使用Compressed In Memory
      · 如果是背景音乐文件或者较长较大的文件,推荐使用Streaming,通过流式加载避免载入时卡顿
    • 当游戏需要静音时,不要简单得将音量设置为0,应该销毁音频(Audio Source)文件,将其从内存中完全卸载
    • 音乐音效一般不会成为优化的瓶颈,但可以减小内存的使用和安装文件的大小,使用第三方的和带有复杂逻辑的除外