menu
版本
2017.1.9.6501
2024.1.5.8803
2023.1.13.8732
2022.1.19.8584
2021.1.14.8108
2019.2.15.7667
2019.1.11.7296
2018.1.11.6987
2017.2.10.6745
2017.1.9.6501
2016.2.6.6153
2015.1.9.5624
2024.1.5.8803
2023.1.13.8732
2022.1.19.8584
2021.1.14.8108
2019.2.15.7667
2019.1.11.7296
2018.1.11.6987
2017.2.10.6745
2017.1.9.6501
2016.2.6.6153
2015.1.9.5624
为了克服 LoadBank() 机制的一些缺点,您可以先采用 Prepare 操作来"预备" SoundBank 而不是使用 AkBankContent_All() 加载它们(译注:为了突出 Prepare 是一种 API 调用,文档尽量用英语原文来代表这种预备操作,而不做通篇翻译)。在使用此方法时,SoundBank 仍可包含所有内容类型(事件、结构数据和媒体文件);但是,此方法不是立即加载媒体文件,而是通过使用 PrepareEvent() 机制来将所有媒体加载到内存中。通过使用此机制加载媒体,Wwise 首先查看媒体文件是否已经存在内存中,然后再加载它。这可以避免内存中出现媒体文件重复,从而将内存占用保持在最低水平。
除了可以节省内存外,此方法还可以保证顺序访问磁盘,这将避免在使用 PrepareEvent() 中一次 Prepare 一个 Event 时可能发生的随机磁盘寻址。
下图演示了“Prepare Bank(All Content)”(预备 SoundBank(全部内容))机制如何将元数据和内容加载到平台内存中。
![]() |
在加载带 Vorbis 编码媒体的 SoundBank 时,可以使用 Preparation_LoadAndDecode 这个预备类型将这些媒体文件解码成非压缩 PCM 文件。这会使 SoundBank 体积变大,但当事件调用媒体文件时,将立即播放而无需进行解码。