在定义对象的高级设置前,您可能会需要查看以下章节,其中提供了一系列技巧和经验总结,可以帮助您获得所需结果。
对于较短的 Sound SFX 对象,其音量低于音量阈值时请将其终止,多数情况下,您应该对低于音量阈值的短小 Sound SFX 对象使用 Kill voice 选项,因为将其发送到虚声部后将导致以下结果:
如果选择了 Play from beginning 或 Resume,则返回实声部时,播放的声音很可能将不合时宜。
如果选择了 Play from elapsed time,则由于该声音很有可能作为虚声部被终止,所以很可能只会产生无谓的 CPU 消耗。
决定使用哪个虚声部设置之前,应了解各虚声部设置的内存和 CPU 占用。
Play from beginning - 该选项仅使用少量内存和 CPU,但如果对声音进行了流播放,则从虚声部返回时可能存在延迟。
Play from elapsed time —— 该选项可以节省部分 CPU 和内存,但如果流播放声音,则声音从虚声部返回时可能会出现延迟。
Resume —— 该选项使用较少的 CPU,但会占用较大的内存,因为当声音从虚声部返回时将会保留内存缓冲区。请注意,如果声音永远不会重新进入最大衰减距离,而导致声音永远不会从虚声部返回,则在游戏运行过程中该缓冲区将一直保留在内存中。如果很多声音发生这种现象,则内存缓冲区将随时间累积,最终会在游戏中占用大量内存。
下图显示了各个虚声部选项彼此之间以及相对于 Continue to Play 选项的内存和 CPU 占用:
当然,当您考虑声音的音频格式、采样率、流播放设置等因素时,这些选项之间的差异有些可以忽略不计,但也有些差异巨大。
表 1. 虚声部:计算哪些,不计算哪些
总是计算 |
作为虚声部时不计算 |
---|---|
|
|
备注 | |
---|---|
在大部分时间里,当声部变为虚拟时音频数据的缓冲区将被释放,设置为 Resume 行为时除外。 |
备注 | |
---|---|
仅当总线上至少有一个实声部在播放时,才会对 Master-Mixer Hierarchy 总线上的效果进行处理。 |