4_艺术资源的优化
音频资源
可以通过这3个选项的设置指定音频的加载方式

Load In Background
决定加载声音时,数据是从主线程加载,还是在后台异步加载
使用异步加载时可以通过AudioClip.loadState属性来检查加载进度,只有加载好后音频才能播放
Preload Audio Data
决定音频数据是在场景初始化期间就加载还是使用时加载,禁用后场景的初始化速度会更快,但第一次播放时,CPU会根据Load In Background 的设置决定是否占用主线程加载这个音频
可以手动调用 AudioClip.LoadAudioData()加载 AudioClip.UnloadAudioData()卸载,
上面两个方法都会根据Load In Background 的设置决定是否占用主线程
Load Type
定义音频数据会以什么形式加载到内存中,有3种加载方式
Decompress on Load:加载整个文件,并全部解压
Compressed in Memory:加载整个文件,不解压,播放时边播边解压
Streaming:一边加载一边解压
音频的压缩格式设置,压缩格式的可选种类会因为平台不同而变化

Vorbis:压缩率大(3-40:1),解压速度慢
MP3:压缩率中(2-12:1),解压速度较慢
ADPCM:压缩率小(33.5:1),解压速度快
PCM:未压缩,解压速度最快,体积最大
音频相关的推荐设置
统一要求
强制单声道(降低50%内存占用),根据效果选择是否勾上Normalize

重新采样到较低的频率(减小文件,优化内存占用)

设置为 Override Sample Rate,优先选择22050HZ,如果音质不能接受,就选择441001HZ(最好不要高于这个值)

纹理资源
纹理资源最好保证长宽都为2的次幂,这样设置压缩格式时才不会受到限制,同时GPU也可以更快进行纹理采样
如果导入的图片为完全不透明状态,那么对Alpha值的计算就是无意义的,应该设置为None

None:无论纹理是否有Alpha通道,导入的纹理都没有Alpha通道
Input Texture Alpha:使用纹理的Alpha通道
From Gray Scale: 根据灰度值计算透明度,黑色为透明,白色为不透明
如果没有特殊需求,关闭Read/Write

mip map开启后,会生成不同尺寸的纹理,使用了该纹理的贴图在离摄像机较远的情况下会使用低分辨率纹理
2D游戏需要关闭纹理的mip map,3D游戏只有场景纹理需要开启mip map,UI关闭mip map

如果没有特殊需求,没必要选择 Trilinear

Point(no filter):不过滤采样,直接输出对应的像素
Bilinear:双线性过滤,对邻近的像素进行插值处理,使得边缘平滑,不会有明显锯齿
Trilinear:三线性过滤,在开启mip map后,三线性过滤可以在不同分辨率贴图的切换间做到更加平滑的效果
纹理压缩格式

BC7:图片不需要为2的幂次的贴图,可以在不同操作系统上使用
DXT:图片需要为2的幂次的贴图,相比BC7压缩率更高
DXT1:不支持透明通道
DXT2:支持透明通道
ETC:几乎所有的安卓设备都支持ETC压缩,所以在移动平台上广泛使用,图片需要为2的幂次的贴图
ETC1:不支持透明通道
ETC2:支持透明通道,但内存占用大于ETC1
ASTC:图片不需要为2的幂次的贴图,缺点是兼容不完善,无法在iphone6以下的设备上运行,且解码时间较长
PVRTC:专为PowerVR显卡设计,仅支持Iphone Ipad 和部分安卓机器
不同平台的压缩格式推荐
