Files
XCEngine/docs/api/audio/reverbation/reverbation.md
ssdfasd 161a0896d5 docs: 添加 Audio 模块和 Components 模块 API 文档
- 新增 Audio 模块文档 (54 个文件)
  - AudioSystem 单例类及 20 个方法页
  - AudioMixer 混音器类及 11 个方法页
  - IAudioBackend、IAudioEffect 接口
  - FFTFilter、Reverbation、Equalizer、HRTF 效果类
  - WASAPIBackend Windows 后端
  - AudioConfig、Audio3DParams 等结构体
  - 9 个枚举类型文档
- 新增 Components 模块文档 (3 个文件)
  - AudioSourceComponent 音频源组件
  - AudioListenerComponent 音频监听器组件
- 更新 docs/api/main.md 添加模块导航
2026-03-22 01:56:16 +08:00

1.8 KiB
Raw Blame History

Reverbation

命名空间: XCEngine::Audio

类型: class

头文件: XCEngine/Audio/Reverbation.h

描述: 混响效果器,基于 Schroeder 算法实现。

概述

Reverbation 是 Schroeder 算法的并行 Comb 滤波器 + AllPass 滤波器混响实现。它模拟真实环境中声音的早期反射和后期混响支持调节房间大小RoomSize、阻尼Damping、干湿信号混合比等参数适用于游戏场景中的环境混响效果。

公共方法

方法 描述
Reverbation 构造函数
~Reverbation 析构函数
ProcessAudio 处理混响音频
SetRoomSize 设置房间大小
GetRoomSize 获取房间大小
SetDamping 设置阻尼
GetDamping 获取阻尼
SetWetMix 设置湿信号混合比例
GetWetMix 获取湿信号混合比例
SetDryMix 设置干信号混合比例
GetDryMix 获取干信号混合比例
SetWidth 设置声场宽度
GetWidth 获取声场宽度
SetFreeze 设置冻结模式
IsFreeze 检查冻结状态

使用示例

#include <XCEngine/Audio/Reverbation.h>

using namespace XCEngine::Audio;

void SetupReverb() {
    Reverbation* reverb = new Reverbation();
    reverb->SetRoomSize(0.5f);
    reverb->SetDamping(0.5f);
    reverb->SetWetMix(0.3f);
    reverb->SetDryMix(0.7f);
    reverb->SetWidth(1.0f);
}

相关文档