在决定工程层级结构下各个对象的播放行为前,最好仔细查看以下章节。您可以参照其中的技巧和窍门来获得自己想要的结果。
一般来说,最好对体积过大而不好存储在内存中的声音进行流播放。比如,频繁播放的音乐、环境声/房间底噪、语音等。但决定哪个选项最适用时,需要考虑很多因素。
在项目初期,建议就以下事项与开发团队进行沟通:
音频可以使用多少播放流?
每条播放流的带宽是多少?
这些播放流是否会共享?
可以同时使用多少播放流?
从哪里进行流播放?是平台硬盘、光盘,还是从远程服务器?
通过这些信息以及声音的采样率和压缩格式,您可以进行计算,然后就是否使用流播放声音做出决策。
When you set containers to Continuous Play Mode, you must also configure the conditions under which the containers stop playing. If you do not stop them, playback might continue without producing audio, which consumes system resources and could cause memory leaks. If enough of these undetected playback leaks occur at the same time, you might receive the “Critically high number of active playback instances.”一节 message in the Wwise capture log.
将 Random Container(随机容器)范围设置为“Global”(全局)来避免声音重复 —— 使用 Random Container 的 Shuffle 模式进行连续播放,目的是为了避免声音重复。若容器包含的声音数量有限,且同时要播放很多个该容器,就可能会出现声音重复问题。要避免这样的现象,请确保该容器内声音对象的数量至少为播放实例数量的两倍。比如,若同一 Random Container 有三个播放实例,则建议容器包含至少三个不同的声音对象,以此来避免重复。
CPU 用量:注意,在播放 Blend Container(混合容器)时,会同时播放容器内的所有对象。这样可能会消耗大量的内存。对此,可使用虚声部设置来降低 CPU 用量。但若频繁进行短的交叉淡变,便可能会导致出现毛刺噪声。有关使用虚声部的详细信息,请参阅 “Volume Threshold 和 Virtual Voices”一节。
Switch Container 和 Blend Container 的取舍:在游戏当中,Switch Container(切换开关容器)和 Blend Container 都可与 RTPC 结合使用并产生相近的效果。根据自身需要酌情考虑以下事项:
如果您希望在不同时间播放不同的对象,而且不需要交叉淡变,那么请使用切换容器。
如果希望一直播放所有对象,而且需要交叉淡变,则应使用混合容器。