/// <inheritdoc /> public void RemoveEffect(GameObject soundEmittingObject) { // Audio occlusion is performed using a low pass filter. AudioLowPassFilter lowPass = soundEmittingObject.GetComponent <AudioLowPassFilter>(); if (lowPass == null) { return; } float neutralFrequency = AudioInfluencerController.NeutralHighFrequency; AudioInfluencerController influencerController = soundEmittingObject.GetComponent <AudioInfluencerController>(); if (influencerController != null) { neutralFrequency = influencerController.NativeLowPassCutoffFrequency; } lowPass.cutoffFrequency = neutralFrequency; lowPass.enabled = false; // Note: Volume attenuation is reset in the AudioInfluencerController, which is attached to the sound emitting object. }
private void OnValidate() { influencerController = gameObject.GetComponent <AudioInfluencerController>(); }