menu
 

性能优化 & 移动平台考量

目录

监控内存用量

上节介绍了如何使用 Profiler 来查看 Wwise 的内存用量。虽然可在 Advance Profiler 的其他选项卡(如 SoundBanks)中查看部分内存使用情况,但是 Memory 选项卡会从整体上按照不同的类别清晰地展示分配的所有内存。相信各位对其中的有些类别(如 Media、Structure 和 Event)并不陌生。不过,对 Wwise 来说并不只有 SoundBank 会占用内存。

就本认证课程而言,以下类别最为相关:

  • Media(媒体):SoundBank(音频包)加载的压缩和未压缩媒体。

  • Processing(处理):用于解压、应用效果器、混音和 DSP 处理的音频缓冲区。

  • Processing (Plug-in)(处理(插件)):Convolution Reverb、RoomVerb 或 Time Stretch 等插件的内存分配。

  • Integration(集成):特定于集成的内存分配(比如回调或捕获音频输出)。

如需查看完整的描述,请参阅 Memory 页面。

从各种各样的内存类别可以看出,声音引擎的很多方面都会占用内存。有些(如 Media)一般没什么变化,直到内存用量突然出现大幅度增加。这是因为它们基于的是 SoundBank 加载情况;有些(如 Processing 或 Spatial Audio)则会不断变化。这是因为它们基于的是运行时状况(比如当前正在播放的声部数量)。因此,Memory 选项卡尤其适合用于对内存用量的大致了解。比如,评估声音引擎的哪些方面内存需求最高。然后,您就可以基于所做评估来运用前面课程中学到的技巧实施优化。

为了展示内存用量如何基于游戏场景而变化,我们来在《WAG》中打开已针对 Spatial Audio Acoustics 进行调整的场景:地牢。

[备注]

借助 Spatial Audio Acoustics,我们可以配置 Room、Portal 等等以控制声音在游戏空间中的传播。在本套课程中,您并不需要完全理解这一功能。不过要是想了解更多信息,不妨参阅在 Unity 中使用 Spatial Audio

《WAG》中只有一个地方启用了这一功能。在传送到相应位置时,会在 Memory 选项卡中看到明显的变化。

  1. 试玩《WAG》并重新连接 Profiler(性能分析器)。

  2. 在 Advanced Profiler(高级性能分析器)中,确保打开 Memory(内存)选项卡,并留意 Spatial Audio 类别的内存用量。

  3. 打开 Menu (Esc),接着转到 Audio 子菜单,然后启用 Spatial Audio。

  4. 返回 Main 菜单,然后传送到 Dungeon。

  5. 返回 Advanced Profiler(高级性能分析器)的 Memory(内存)选项卡,然后再次察看 Spatial Audio 类别。

  6. 退出游戏模式。我们可以看到,在进入地牢时,Spatial Audio 类别的内存用量增加了。这是游戏对内存的正常使用,所以不需要做进一步的优化。不过,倘若看到 Media 或 Processing (Plug-in) 类别的内存用量意外增加,不妨以此评估结果为起点来排查内存问题:比如,可能加载了 SoundBank 两次,或可能需要检查 Effect 设置。


此页面对您是否有帮助?