Files
XCEngine/docs/api/resources/audio-loader/index.md
ssdfasd f5a34f8adc docs: 重构 API 文档 - components 和 scene 模块
- components: 修复英文标题为中文,添加缺失组件文档
  - 新增 camera-component, light-component, audio-source-component, audio-listener-component 类总览
  - 修复 get-position.md 格式
  - 更新 components.md 模块总览
- scene: 修复方法文档格式,新增缺失方法
  - 修复 find.md, create-game-object.md 英文标题
  - 新增 FindByID, SerializeToString, DeserializeFromString 方法文档
  - 更新 scene.md 类总览方法列表
2026-03-26 01:50:27 +08:00

1.9 KiB

AudioLoader

命名空间

XCEngine::Resources

类型

类 (Class)

描述

音频资源加载器,负责从文件系统加载音频文件并转换为 AudioClip 资源。支持 WAV、OGG、MP3、FLAC、AIFF 等常见音频格式。

概述

AudioLoader 继承自 IResourceLoader 接口,实现音频资源的异步加载与格式解析。内部通过文件扩展名和文件头数据双重检测确定音频格式,确保加载结果的准确性。

公共方法表格

方法 返回值 描述
AudioLoader - 构造函数
~AudioLoader - 析构函数
GetResourceType ResourceType 返回资源类型 AudioClip
GetSupportedExtensions Array<String> 获取支持的扩展名列表
CanLoad bool 检查是否能够加载指定路径的资源
Load LoadResult 加载音频资源
GetDefaultSettings ImportSettings* 获取默认导入设置

使用示例

#include "Resources/AudioLoader.h"
#include "Resources/ResourceManager.h"

using namespace XCEngine::Resources;

// 通过 ResourceManager 加载音频
ResourceGUID guid = ResourceGUID::Generate("assets/audio/bgm_music.ogg");
LoadResult result = ResourceManager::Get().Load(guid, "assets/audio/bgm_music.ogg");

if (result.IsSuccess()) {
    AudioClip* clip = result.GetResource<AudioClip>();
    // 使用音频片段
}

相关文档