如何在Unity3D中静音特定的音频源?

时间:2014-07-16 00:20:48

标签: c# audio unity3d

如何访问特定对象的音频源?

例如,如果我有一个Bob对象想要静音Steve对象的音频源,同时继续播放Bob对象音频源。

1 个答案:

答案 0 :(得分:4)

如果要在场景中找到的对象名为“Steve”,那么您可以使用GameObject.Find

GameObject steveGameObject = GameObject.Find("Steve");
if(steveGameObject != null)
{
    AudioSource steveAudio = steveGameObject.GetComponent<AudioSource>();
    if(steveAudio != null)
    {
        // Mute Steve's Audio
        steveAudio.mute = true; 
    }
}

如果您已经知道如何获取游戏对象或者是从碰撞,光线投射等获取游戏对象,那么您可以使用相同的代码,而不是使用该游戏对象。