【m】04.AudioCore [1.1.3] - 2026-01-12

### Added
- 添加背景音乐缓出接口
### Fixed
- 修复背景音乐播放时不循环的问题
This commit is contained in:
mzh
2026-01-12 12:52:24 +08:00
parent d85172aa7e
commit 8a5ca901ca
5 changed files with 44 additions and 11 deletions

View File

@@ -0,0 +1,12 @@
# Changelog
此包的所有更新日志会被记录在此文件中
## [1.1.3] - 2026-01-12
### Added
- 添加背景音乐缓出接口
### Fixed
- 修复背景音乐播放时不循环的问题
## [1.1.2] - 2026-01-09
### Fixed
- 修复背景音乐无法播放的问题

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a22131ad87896114c900d929c8588c8b
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -64,6 +64,7 @@ namespace Stary.Evo.AudioCore
{ {
audioSource1.clip = audioData.clip; audioSource1.clip = audioData.clip;
audioSource1.volume = audioData.volume; audioSource1.volume = audioData.volume;
audioSource1.loop = true;
// 设置2D与3D音频 // 设置2D与3D音频
if (audioData.is3DAudio) if (audioData.is3DAudio)
@@ -97,6 +98,7 @@ namespace Stary.Evo.AudioCore
{ {
audioSource2.clip = audioData.clip; audioSource2.clip = audioData.clip;
audioSource2.volume = audioData.volume; audioSource2.volume = audioData.volume;
audioSource2.loop = true;
// 设置2D与3D音频 // 设置2D与3D音频
if (audioData.is3DAudio) if (audioData.is3DAudio)
@@ -139,7 +141,7 @@ namespace Stary.Evo.AudioCore
public override void StopAll() public override void StopAll()
{ {
FadeAllMusic(); FadeAllMusic(0);
} }
public override AudioSource GetAudioSource() public override AudioSource GetAudioSource()
@@ -153,7 +155,7 @@ namespace Stary.Evo.AudioCore
/// <param name="audioData">{[fadeDuration:自然过渡时间]}</param> /// <param name="audioData">{[fadeDuration:自然过渡时间]}</param>
public override void Stop() public override void Stop()
{ {
FadeAllMusic(); FadeAllMusic(0f);
} }
@@ -199,13 +201,11 @@ namespace Stary.Evo.AudioCore
FadeOutMusic(source2, fadeDuration); FadeOutMusic(source2, fadeDuration);
} }
public void FadeAllMusic(float fadeDuration)
private void FadeAllMusic()
{ {
currentAudioSource = null; currentAudioSource = null;
FadeOutMusic(audioSource1, fadeDuration);
audioSource1.Stop(); FadeOutMusic(audioSource2, fadeDuration);
audioSource2.Stop();
} }
/// <summary> /// <summary>
@@ -222,7 +222,7 @@ namespace Stary.Evo.AudioCore
public void Dispose() public void Dispose()
{ {
FadeAllMusic(); FadeAllMusic(0f);
Object.Destroy(audioSource1.gameObject); Object.Destroy(audioSource1.gameObject);
Object.Destroy(audioSource2.gameObject); Object.Destroy(audioSource2.gameObject);
audioSource1 = null; audioSource1 = null;

View File

@@ -168,8 +168,7 @@ namespace Stary.Evo.AudioCore
/// <summary> /// <summary>
/// 停止播放背景音乐 /// 停止播放背景音乐
/// </summary> /// </summary>
/// <param name="fadeDuration">自然过渡时间</param> public static void StopMusic()
public static void StopMusic(float fadeDuration = 1f)
{ {
if (Music == null) if (Music == null)
{ {
@@ -180,6 +179,21 @@ namespace Stary.Evo.AudioCore
Music.Stop(); Music.Stop();
} }
/// <summary>
/// 停止播放背景音乐
/// </summary>
/// <param name="fadeDuration">自然过渡时间</param>
public static void FadeAllMusic(float fadeDuration = 1)
{
if (Music == null)
{
Debug.LogError("AudioCoreManager: Music is null, please initialize it first.");
return;
}
Music.FadeAllMusic(fadeDuration);
}
#endregion #endregion
/// <summary> /// <summary>

View File

@@ -1,6 +1,6 @@
{ {
"name": "com.staryevo.audiocore", "name": "com.staryevo.audiocore",
"version": "1.1.2", "version": "1.1.3",
"displayName": "04.AudioCore", "displayName": "04.AudioCore",
"description": "音频播放工具", "description": "音频播放工具",
"unity": "2021.3", "unity": "2021.3",