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

本文关键字:音频 Unity3D | 更新日期: 2023-09-27 18:13:02

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

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

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

如果你想在场景中找到的对象命名为"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; 
    }
}

如果你已经知道如何获得游戏对象,或者从碰撞、光线投射等中获得它,那么你可以使用相同的代码,但使用该游戏对象。