feat: 音频系统统一重写—AudioManager管理全部音频

新增 AudioManager.cs 挂在 [Managers] 上:
- _bgSource: 背景音乐(首页/实验), spatialBlend=0, BgVolume可调
- _sfxSource: 音效(篮球/manCall), Stop()可打断
- _voiceSource: 语音中断播放

替换:
- PageController: BGMController→AudioManager.I
- OpeningFlowController: PlayClipAtPoint→AudioManager.I.PlayBasketball/ManCallSfx
- 删除 BGMController.cs
- 删除旧 AudioManager.cs(Assets/Scripts/Audio/旧版)
This commit is contained in:
yangbear
2026-07-01 22:35:36 +08:00
parent c3d1efbe2c
commit b4415dea4c
5 changed files with 75 additions and 134 deletions
+4 -4
View File
@@ -121,8 +121,8 @@ public class PageController : MonoBehaviour
if (_uiManager != null)
_uiManager.enabled = (page == Page.Experiment);
if (page == Page.Home) BGMController.PlayHomeBg(); // 背景音乐: 首页播 homeBg, 选固定方式时停, 实验启动时播 experimentBg
if (page == Page.Home) BGMController.PlayHomeBg();
if (page == Page.Home) AudioManager.I.PlayHomeBg(); // 背景音乐: 首页播 homeBg, 选固定方式时停, 实验启动时播 experimentBg
if (page == Page.Home) AudioManager.I.PlayHomeBg();
Debug.Log($"PageController(编辑器预览): 切换到 [{page}]");
}
#endif
@@ -224,7 +224,7 @@ public class PageController : MonoBehaviour
Debug.Log($"PageController: GameManager 已设置 Mode=[{gm.CurrentMode}] Fixation=[{gm.CurrentFixationMethod}]");
// 隐藏所有UI面板,准备播放片头动画
BGMController.StopBgMusic();
AudioManager.I.StopBgMusic();
HideAllPages();
// 找到 OpeningFlowController 播放片头动画
@@ -267,7 +267,7 @@ public class PageController : MonoBehaviour
{
Debug.Log("PageController: [ActivateExperimentObjects] 显示实验物件");
BGMController.PlayExperimentBg();
AudioManager.I.PlayExperimentBg();
var allObjects = FindObjectsOfType<GameObject>(true);
foreach (var go in allObjects)