决定工程层级的各对象使用何种播放行为之前,您可能需要阅读以下章节中的技巧和经验总结,来帮您获得所需的结果。
一般情况下,您可能需要将体积过大而无法存储在内存中的声音进行流播放,如音乐、环境声,甚至语音(如果数量很多)。但决定哪个选项最适用时,需要考虑很多因素。
在项目的初始阶段,应与开发团队沟通,确定下列事项:
音频可以使用多少播放流?
每条播放流的带宽是多少?
这些播放流是否会共享?
可以同时使用多少播放流?
从哪里进行流播放?是平台硬盘、光盘,还是远程服务器?
通过这些信息以及声音的采样率和压缩格式,您可以进行计算并就是否使用流播放做出决策。
将 Random Container(随机容器)范围设置为“Global”(全局)来避免声音重复 —— 为连续播放的 Random Container 设置 Shuffle 模式,目的是为了避免声音重复。但如果容器包含的声音数量有限,并且该容器同时存在很多实例,则仍可能出现重复问题。要避免此现象,请确保容器内声音对象的数量至少为播放实例数量的两倍。例如,如果同一 Random Container 有 3 个播放实例,那么您的容器应包含至少 6 个不同声音对象,以避免重复。
CPU 占用 —— 请注意,当您播放 Blend Container 时,其中的所有对象将同时播放,从而消耗大量内存。 您以可使用虚声部来降低 CPU 占用,但如果频繁地进行短暂的交叉淡变,则可能导致错误。有关使用虚声部的详细信息,请参阅 (音量阈值)和 Virtual Voices(虚声部)。
使用 Switch Container(切换容器) 还是 Blend Container —— 在游戏过程中,切换容器和混合容器均可配合 RTPC 使用,并产生相似的效果。但两种容器的运作方式显著不同,您可以根据要求选择使用。
如果希望在不同时间播放不同的对象,而且无需交叉淡变,请使用切换容器。
如果希望一直播放所有对象,而且需要交叉淡变,则应使用混合容器。