版本

menu_open

优先级相关技巧和经验总结

在定义对象的高级设置前,您可能会需要查看以下章节,其中提供了一系列技巧和经验总结,可以帮助您获得所需结果。

Playback Priority(播放优先级)

将音乐对象设置为较高优先级 —— 大多数情况下,游戏中音乐对象的优先级应比其它对象要高。触发的对象数量超过播放数限制时,这将确保音乐会连续播放。

Volume Threshold

当较短的音效低于音量阈值时,终止它们 —— 在大多数情况下,您可以针对低于音量阈值的较短音效使用 Kill voice 选项,因为将它们发送至虚声部列表时将发生以下情况:

  • 如果选择了 Play from beginningResume,则声音再次播放时很有可能已经脱离了原先的播放环境。

  • 如果选择了 Play from elapsed time,则由于该声音很有可能作为虚声部被终止,所以很可能只会产生无谓的 CPU 消耗。

虚声部

决定使用哪个虚声部设置之前,应了解各虚声部设置的内存和 CPU 占用。

  • Play from beginning —— 该选项仅使用少量内存和 CPU,但如果流播放声音,则声音从虚声部返回时可能会出现延迟。

  • Play from elapsed time —— 该选项可以节省部分 CPU 和内存,但如果流播放声音,则声音从虚声部返回时可能会出现延迟。

  • Resume —— 该选项使用较少的 CPU,但会占用较大的内存,因为当声音从虚声部返回时将会保留内存缓冲区。请注意,如果声音永远不会重新进入最大衰减距离,而导致声音永远不会从虚声部返回,则在游戏运行过程中该缓冲区将一直保留在内存中。如果很多声音发生这种现象,则内存缓冲区将随时间累积,最终会在游戏中占用大量内存。

下图显示了各个虚声部选项彼此之间以及相对于 Continue to Play 选项的内存和 CPU 占用:

当然,当您考虑声音的音频格式、采样率、流播放设置等因素时,这些选项之间的差异有些可以忽略不计,但也有些差异巨大。

虚声部:计算哪些,不计算哪些

总是计算

作为虚声部时不计算

  • 定位计算、声部优先级和音量仍被计算,因为需要这些信息才能确定声部是否返回至实声部。

  • Play from elapsed time 模式下,进入虚声部时仍将运行源插件(因为声音引擎无法在源插件中进行位置查找)。

  • 编解码解压缩。

  • 音频数据移动、复制或混音。

  • LPF、采样率转换、音高平移和 Actor-Mixer 层级结构中插入的效果器。

  • I/O 读数。


[注意] 注意

在大部分时间里,当声部变为虚拟时音频数据的缓冲区将被释放,设置为 Resume 行为时除外。

[注意] 注意

仅当总线上至少有一个实声部在播放时,才会对 Master-Mixer Hierarchy 总线上的效果进行处理。

对音乐对象进行数量限制

对音乐对象进行数量限制时,请注意不要将限制设置得过低,因为某些片段可能无法播放,从而导致音乐出现中断。请记住,在音乐段落之间应用淡变和切换时,可能同时播放段落内多个片段的前导段或后尾段,还可能播放插播乐句,因此很容易超出数量上限。


此页面对您是否有帮助?

需要技术支持?

仍有疑问?或者问题?需要更多信息?欢迎联系我们,我们可以提供帮助!

查看我们的“技术支持”页面

介绍一下自己的项目。我们会竭力为您提供帮助。

来注册自己的项目,我们帮您快速入门,不带任何附加条件!

开始 Wwise 之旅