Ejemplo n.º 1
0
    // I didn't make much about the audio souces configurable, this is where you'd change the defaults
    private AudioInstance GetOrAddAudioInstance(GameObject forSource, SoundBank soundBank)
    {
        AudioGroup    audioGroup    = GetOrAddAudioGroup(forSource);
        AudioInstance audioInstance = audioGroup.GetAudioInstance(soundBank);

        if (audioInstance == null)
        {
            audioInstance           = new AudioInstance();
            audioInstance.SoundBank = soundBank;

            audioInstance.AudioSource = forSource.AddComponent <AudioSource>();
            ConfigureSourceForSound(audioInstance.AudioSource, soundBank);

            audioGroup.AddAudioInstance(audioInstance);
        }

        return(audioInstance);
    }
Ejemplo n.º 2
0
    // I didn't make much about the audio souces configurable, this is where you'd change the defaults
    private AudioInstance GetOrAddAudioInstance(GameObject forSource, SoundBank soundBank)
    {
        AudioGroup    audioGroup    = GetOrAddAudioGroup(forSource);
        AudioInstance audioInstance = audioGroup.GetAudioInstance(soundBank);

        if (audioInstance == null)
        {
            audioInstance                                   = new AudioInstance();
            audioInstance.AudioSource                       = forSource.AddComponent <AudioSource>();
            audioInstance.AudioSource.spatialize            = soundBank.IsSpatial;
            audioInstance.AudioSource.spatialBlend          = soundBank.IsSpatial ? 1.0f : 0.0f;
            audioInstance.AudioSource.volume                = soundBank.VolumeScale;
            audioInstance.AudioSource.loop                  = soundBank.IsLooping;
            audioInstance.AudioSource.minDistance           = soundBank.MinDistance;
            audioInstance.AudioSource.maxDistance           = soundBank.MaxDistance;
            audioInstance.AudioSource.rolloffMode           = AudioRolloffMode.Linear;
            audioInstance.AudioSource.outputAudioMixerGroup = soundBank.AudioMixerGroup;
            audioInstance.SoundBank                         = soundBank;
            audioGroup.AddAudioInstance(audioInstance);
        }

        return(audioInstance);
    }