feat: Unified ResourceLoader

- 新增 统一 `ResourceLoader`类,负责同步/异步加载资源,并对已加载的资源缓存。
- 修改 `MusicTransition`, `AudioSystem`, `LongAudioContainerPlayer`, `MusicSegment`, 'SfxSystem`, `HapticSystem`使用最新的`ResourceLoader`。
This commit is contained in:
2026-05-14 11:35:38 +08:00
parent 36f4c2e2d3
commit c30239111c
7 changed files with 116 additions and 7 deletions
@@ -340,7 +340,12 @@ namespace OCES.Audio
return null;
}
AudioClip clip = Resources.Load<AudioClip>($"Audios/{segment.Name}");
// AudioClip clip = Resources.Load<AudioClip>($"Audios/{segment.Name}");
AudioClip clip = null;
AudioSystem.Instance.ResourceLoader.LoadAsync<AudioClip>($"Audios/{segment.Name}", loadedClip =>
{
clip = loadedClip;
});
if (!clip)
{
Debug.LogError($"[LongAudioContainerPlayer] 音频文件未找到: {segment.Name}");
@@ -16,7 +16,7 @@ namespace OCES.Audio
{
foreach (MusicSegment segment in this.m_musicSegmentInfos.Values)
{
AudioClip clip = Resources.Load<AudioClip>($"Audios/{segment.Name}");
AudioClip clip = AudioSystem.Instance.ResourceLoader.LoadSync<AudioClip>($"Audios/{segment.Name}");
if (!clip)
{
Debug.LogError($"[MusicSegmentConfig] 音频文件未找到: {segment.Name}, SegmentId: {segment.Id}");