Я пытаюсь создать музыкальное приложение.
Я бы хотел иметь возможность переключаться в AudioMixer между различными звуковыми группами, используя один и тот же GameObject.
Можно ли изменитьисточник PianoMixer с другим скриптом во время выполнения?
public class PianoAudioManager : MonoBehaviour{
public PianoSound[] PianoSounds;
public static PianoAudioManager instance;
public AudioMixerGroup PianoMixer;
void Awake()
{
if (instance == null)
instance = this;
else
{
Destroy(gameObject);
return;
}
DontDestroyOnLoad(gameObject);
foreach(PianoSound s in PianoSounds)
{
s.source = gameObject.AddComponent<AudioSource>();
s.source.outputAudioMixerGroup = PianoMixer;
s.source.clip = s.clip;
s.source.volume = s.volume;
s.source.pitch = s.pitch;
}
}
}
Я пробовал что-то подобное, но я всегда получаю ошибки
public class Octaves : MonoBehaviour
{
public GameObject PianoAudioManager;
public void OctaveDown()
{
AudioMixer audioMixer = Resources.Load<AudioMixer>("Scales/Sounds");
AudioMixerGroup[] audioMixGroup = audioMixer.FindMatchingGroups("Master/PianoDown");
PianoAudioManager.outputAudioMixerGroup = audioMixGroup[0];
}
}
Буду очень признателенза любую помощь, большое спасибо.