创建
在Unity中创建了一个混音器,并为其创建了一个混音组。你可以在Project视图中的Create菜单下选择AudioMixer来创建一个新的混音器
添加混音组,双击混音器组件,进入此页面
找到Groups组,添加
那么好,混音器弄完了,如何使用?
使用
拖拽使用
这个方式虽然过于简单轻松,但很不实用,也不推荐
直接将混音组拖到AudioSource组件的Output上
代码使用
唯一真神
首先要引入命名空间
using UnityEngine.Audio;
然后就可以使用API:AudioSource.outputAudioMixerGroup来给混音器
using UnityEngine;
using UnityEngine.Audio;
public class Example : MonoBehaviour
{
public AudioMixerGroup mixerGroup; // 混音器组
private AudioSource audioSource;
private void Start()
{
audioSource = GetComponent<AudioSource>();
audioSource.outputAudioMixerGroup = mixerGroup; // 设置混音器组
}
}
如果混音组想用代码获取也是可行的,使用API
官方文档:Audio.AudioMixer-FindMatchingGroups - Unity 脚本 API
//groupToFind混音组名字
AudioMixerGroup[] AudioMixer.FindMatchingGroups(string groupToFind);
使用一下
using UnityEngine;
using UnityEngine.Audio;
public class Example : MonoBehaviour
{
// 混音器的名字
public string mixerName;
// 要获取的混音组的名字
public string groupToFind;
private void Start()
{
// 获取混音器
AudioMixer mixer = Resources.Load<AudioMixer>(mixerName);
if (mixer != null)
{
// 获取混音组
AudioMixerGroup[] groups = mixer.FindMatchingGroups(groupToFind);
if (groups.Length > 0)
{
// 在这里处理获取到的混音组
AudioMixerGroup targetGroup = groups[0];
Debug.Log("找到混音组:" + targetGroup.name);
}
else
{
Debug.Log("未找到混音组:" + groupToFind);
}
}
else
{
Debug.Log("未找到混音器:" + mixerName);
}
}
}
在Unity的混音器中,Master混音组和其他混音组之间有一种层次结构关系。 Master混音组是顶级混音组,控制整个应用程序的音频输出。所有其他混音组都是Master混音组的子级混音组。 通过在Master混音组中设置音频效果、音量和其他混合参数,可以影响整个应用程序中所有音频源的输出。
而其他混音组可以继承或覆盖Master混音组的设置,并对特定的音频源或音频组进行独立的控制。
这种层次结构关系使得你可以在不同的混音组中设置不同的音频效果和混合参数,以实现更精细的音频控制和混合效果。
例如,你可以在Master混音组中设置全局的混响效果,然后在子级混音组中设置特定音频组的音量和平衡。 总结起来,Master混音组是顶级混音组,控制整个应用程序的音频输出。其他混音组是Master混音组的子级混音组,用于对特定的音频源或音频组进行独立的控制和设置。