Unity - 性能优化实战01 - UPR工具的使用和音频优化

UPR Asset Checker 介绍

  • 看下去,很简单
  • 用于本地资源检测,帮助开发者尽早发现资源文件中存在的问题
  • 支持所有版本的Unity项目
  • 不依赖Unity Editor,无需安装绿色运行
  • 检测速度极快,可在UPR中查阅检测结果
  • 支持命令行模式,可与CI/CD工具轻松集成,实现自动化检测
  • 规则库持续更新
  • 支持AssetBundle冗余检测
  • 支持静态代码分析

获取Asset Checker

  • 下载Unity资源检测工具
  • 下载到一个压缩包,解压缩即可
  • 命令行窗口访问到这个解压缩后的目录,然后使用assetcheck.exe -h查看帮助信息(爱看不看)
  • 生成配置文件(爱生不生)

assetcheck.exe generate-config



使用Asset Checker 检测Unity工程

输入命令:assetcheck.exe --project=<project_path> --projectId=<project_id>
project_path替换项目真实路径
project_id替换为UPR后台创建应用后获得的ProjectID

检测结果


音乐音效优化

音乐音效一般不会成为性能瓶颈,但优化音乐音效可以减少对内存的使用与包体大小
1.0 音频文件类型
  • 一般情况下可使用未压缩的wav文件作为音频源文件,通过不同平台支持的压缩格式控制压缩比
  • MP3:是一种有损压缩数字音频格式,适用于较长的音效,适合移动平台
  • WAV:音质要强于MP3格式,资源大,无压缩音频导入,适用于较短的音效
  • OGG:压缩比高,适合人声和适用于较长的音效
  • AIFF:无压缩音频导入,适用于较短的音效

1.1 UPR资源检测建议。通过下图可以看到,工具检查了84个资源,对其中的75个提出了改进建议
  • 音频应该启用forceMono,以节省存储和内存
  • default 的短音效应使用DecompressOnLoad
  • default 的常规音效应使用CompressedInMemory
  • default 的音乐应该使用Streaming
  • 默认平台的音频剪辑格式不适用于安卓




1.2 启用Force to Mono

被建议的音频是双声道音频,且左右两声道的音乐完全相同,可以用勾选ForceToMono的方式强制将此音频修改为单声道,内容不丢失的情况下可以减少它的使用内存和大小。特别是在移动平台下几乎听不出任何区别。如果左右声道内容不同,开启ForceToMono会导致听到的声音错误



1.3 音频信息详情

如下图,分别显示的是音频原始资源大小 、资源压缩后的大小 、和整体压缩比



1.4 音乐加载类型
  • Decompress On Load:该选项一般对应音频压缩后大小<200kb的音效文件。音频文件在加载完毕后,会被全部解压到内存中,这种方式会占据大量的内存,然而在播放时由于音频之前已经被解压,所以其对CPU的开销很小。请注意在加载后解压缩如果是Vorbis编码,会使用它压缩时大约10倍的内存,如果是ADPCM编码大约使用3.5倍的内存,所以请不要降此选项用于大文件
  • Compressed In Memory:该选项一般对应音频压缩后大于200kb的音效文件。音频文件以压缩格式存放于内存中,一边播放一边进行解压。这种模式的内存开销会比前一种稍小,但是播放时的CPU开销会较之更大。
  • Streaming流加载:该选项一般对应背景音乐文件,或较大较长的音效文件。音频文件不会被加载到内存,只有即将播放的一小段才会被读取到内存中。这种模式的内存开销最低,但是CPU开销也最大,因为其伴随着大量的磁盘读写操作和解压缩,可以避免载入时卡顿
  • 此外,当游戏需要静音时,不要将音量设置为0,应该销毁音频audiosource组件把它从内存中完全卸载
  • 综上所述,UPR推荐我们不同大小文件要选择好正确的加载类型

1.5 Compression Format 压缩格式
  • PCM:完全不压缩格式,占据的硬盘和内存相对会较大,由于运行时不需要解压,所以它的CPU开销最小,所以非常适合使用在很短的音效上面
  • Vorbis/MP3:常见的压缩格式,主流平台全部支持的格式,压缩比较高,但是运行时的解压缩开销较大,对于音质的损耗更加严重,所以多了个Quality可以调节质量改变文件大小1-100。在iOS平台上一般设置为MP3,因为iOS支持MP3格式的硬解码。如果音乐不循环可以使用MP3格式。
  • ADPCM:一种古老的压缩格式,相对于PCM的压缩比为3.5:1,但是运行时的解压开销很小,对于音质有一定损耗。这个格式适用于需要大量使用的音效上面,比如脚步 爆破和子弹发射,所以适合简短常用的音效
  • 综上所述,URP建议我们在安卓平台修改为Vorbis/MP3格式,在IOS平台修改为MP3格式。音频压缩策略需要考虑不同压缩格式在不同平台下的特点,以及音乐音效文件在不同用途下使用不同的压缩格式

1.6 采样率
  • 通常在移动平台都会选择对音质影响最小的最低设置,一般移动平台音频采样率经验数据建议设置为22050Hz。如下图,可以看到该音频源文件的音频采样率是36046Hz,在移动平台上完全没有必要,只会徒增文件大小和内存占用。


  • 如果要修改默认的音频采样频率,可以通过Sample Rate Setting下拉菜单选择 Override Sample Rate,并修改采样频率为22050Hz。与上面的音频信息对比可以发现导入后的大小也会缩减,越低采样频率生产的音频文件会越小。


实际打包对比

  • 优化音频前
  • 优化音频后


  • 通过图直观看到,优化后内存的占用比之前要少了70兆 ,而Cpu的负载仅提高了3%。这是因为一部分音频loadtype改成了streaming,额外产生了一些cpu开销。与内存方面相比,这个优化是非常值得的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,919评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,567评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,316评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,294评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,318评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,245评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,120评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,964评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,376评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,592评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,764评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,460评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,070评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,697评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,846评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,819评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,665评论 2 354

推荐阅读更多精彩内容