- 理解游戏音频的加载、播放、混音、音效池原理;
- 实现背景音乐循环、一次性音效、音量控制;
- 对标 Godot
AudioStreamPlayer。
- 资源管理:音频文件也用资源管理器缓存。
- 音效池:预创建多个
Sound对象,避免同时播放多个相同音效时的冲突(Pygame 默认可同时播放多个)。 - 背景音乐 vs 短音效:通常使用
pygame\.mixer\.music模块处理长音乐(流式),Sound处理短音效。 - 混音器限制:Pygame 默认 8 通道,超出会截断。
- 扩展资源管理器支持
load\_sound和缓存。 - 实现
play\_sound\(sound\_key, volume=1\.0\),支持调整音量。 - 背景音乐:加载一个音乐文件,循环播放,实现静音/恢复按钮。
- 简单音效池:为枪声创建 5 个
Sound副本,轮流播放。
- 在 Godot 中创建
AudioStreamPlayer并播放音频,查看其“音量”、“混音总线”相关属性。 - 思考:引擎中“音效总线”和“音量滑块”如何与底层音频系统交互?如果你要实现一个主音量控制,需要做什么?