Unity Android 平台音频优化,大大减少资源占用。为什么我的游戏加芙囹买乐载时间那么长?为什么播放游戏声音时延迟那么长?为唳饺碧必什么声音文件占那么多的内存?为什么我一播放声音游戏就那么卡?难道是因为我在开发时对声音的处理有问题?本节将简单介绍简单的音频优化的案例,教大家优化音频资源的方法,具体如下
工具/原料
Unity
Audio
音频优化,大大减少资源占用
1、打开Unity,新建一个空工程,具体如下图
2、在场景中新建两个Button按钮,用来控制背景音乐和音效播放,具体如下图
3、在工程中新建一个脚本“AudioManager”,然后打开脚本进行编辑,具体如下图
4、在打开的“AudioManager”脚本上编辑代码,首先设置变量接收音乐音频资源,并设置按钮变量,然后进行按钮事件监听,最后完成监听事件函数,具体代码及代码说明如下图
5、“AudioManager”代码具体内容如下:using UnityEngine;using UnityEngine.UI;public class AudioManager : MonoBehaviour { public AudioClip[] BGMusicArray; public AudioSource BGMusicSource; public AudioClip[] SFXSoundArray; public AudioSource SFXSoundSource; public Button PlayBGMusicBTn; public Button PlaySFXSoundBtn; // Use this for initialization void Start () { PlayBGMusicBTn.onClick.AddListener(PlayRandomBGMusic); PlaySFXSoundBtn.onClick.AddListener(PlayRandomSFXSound); } void PlayRandomBGMusic() { BGMusicSource.clip = BGMusicArray[Random.Range(0, BGMusicArray.Length)]; BGMusicSource.Play(); } void PlayRandomSFXSound() { SFXSoundSource.PlayOneShot(SFXSoundArray[Random.Range(0, SFXSoundArray.Length)]); }}
6、脚本编译OK后,回到Unity界面,在场景中新建一个“GameObject”,把脚本“AudioManager”发给它,具体如下图
7、在工程中新建两个文件夹,把背景音乐和特效音频导入进来,并分别赋给脚本变量,具体如下图
8、在“GameObject”下,在新建两个“GameObject”,分别重命名,然后藜局腑载添加“AudioSource”组件,然后把按钮和“AudioSource”赋给脚本变量,具体如下图
9、运行场景,然后通过“Window”-“Profile”,找到Audio性能面板,目前未优化前的音频资源占用内存情况,90多M,占用蛮大的,具体如下图
10、选中“BGMUSIC”文件夹下的所有音频资源,在右边的“Inspect”面板里,勾选上“Override XXXX”并把“L泠贾高框oad Type”改为“Streaming”,然后“Apply”,具体如下图
11、再次运行场景,再次通过“Window”-“Profile”,找到Audio性能面板,现在优化后的音频资源占用内存情况,3M,大大减少了内存资源占用,具体如下图
12、到此,《Unity 实用技巧 之 音频优化,大大减少资源占用》讲解结束,谢谢