using System; using UnityEngine; using UnityEngine.Serialization; namespace TEngine { /// /// 音频轨道组配置。 /// [Serializable] public sealed class AudioGroupConfig { [SerializeField] private string name = null; [SerializeField] private bool mute = false; [SerializeField, Range(0f, 1f)] private float volume = 1f; [SerializeField] private int agentHelperCount = 1; /// /// 音效分类,可分别关闭/开启对应分类音效。 /// /// 命名与AudioMixer中分类名保持一致。 public AudioType AudioType; /// /// 音频源中3D声音的衰减模式。 /// Logarithmic - 当你想要实现现实世界的衰减时使用此模式。 /// Linear - 当你想要随距离降低声音的音量时使用此模式。 /// Custom -当你想要使用自定义衰减时使用此模式。 /// public AudioRolloffMode audioRolloffMode = AudioRolloffMode.Logarithmic; /// /// 最小距离。 /// public float minDistance = 1f; /// /// 最大距离。 /// public float maxDistance = 500f; /// /// 音频轨道组配置的名称。 /// public string Name => name; /// /// 是否禁用。 /// public bool Mute => mute; /// /// 音量大小。 /// public float Volume => volume; /// /// 音频代理个数。 /// 命名与AudioMixer中个数保持一致。 /// public int AgentHelperCount => agentHelperCount; } }