Übung: Verwenden von Hall, um der räumlichen Audiowiedergabe Weite zu verleihen
In der vorherigen Übung haben Sie für die Sounds eine räumliche Zuordnung hinzugefügt, um ihnen ein Gefühl der Richtung zu geben. In dieser Übung werden Sie einen Halleffekt hinzufügen, um die Entfernung von Geräuschen deutlicher zu machen.
Hinzufügen einer Mixergruppe und eines Halleffekts
Zuvor haben wir einen Mixer hinzugefügt. Der Mixer enthält standardmäßig eine Gruppe mit dem Namen Master. Da nur auf einige Sounds ein Halleffekt angewendet werden soll, fügen Sie nun eine zweite Gruppe für diese Sounds hinzu. Um eine Gruppe hinzuzufügen, klicken Sie mit der rechten Maustaste auf die Gruppe Master in Audio Mixer, wählen Sie Add child group aus. Geben Sie der Gruppe einen geeigneten Namen, z. B. Room Effect:
Jede Gruppe verfügt über eigene Effekte. Um einer neuen Gruppe einen Halleffekt hinzuzufügen, klicken Sie mit der rechten Maustaste auf den Room effect-Mixer, und wählen Sie Add effect at bottom und dann SFX Reverb aus.
In der Audioterminologie wird der Originalton ohne Hall als Trockenpfad bezeichnet, während der Ton nach dem Filtern mit dem Hallfilter als Nasspfad bezeichnet wird. Beide Pfade werden an den Audioausgang gesendet, und ihre relative Stärke in dieser Mischung wird als Nass/Trocken-Mischung bezeichnet. Die Nass/Trocken-Mischung wirkt sich stark auf die Weitenwirkung aus.
Die Option SFX Reverb (SFX-Hall) enthält Steuerelemente zum Einstellen der Nass/Trocken-Mischung innerhalb des Effekts. Da der Trockenpfad mit dem Plug-In Microsoft Spatializer eingestellt wird, wird die Option SFX Reverb (SFX-Hall) nur für den Nasspfad verwendet. Im Bereich „Inspector“ für SFX Reverb:
- Legen Sie die Eigenschaft Dry Level auf die niedrigste Einstellung (–10.000 mB) fest.
- Legen Sie die Eigenschaft Room auf die höchste Einstellung (0 mB) fest.
Mit den anderen Einstellungen wird der Eindruck eines simulierten Raums gesteuert. Vor allem mit der Abklingzeit wird die Wahrnehmung der Raumgröße beeinflusst.
Aktivieren des Halles bei der Videowiedergabe
Wechseln Sie zurück zu Visual Studio, und heben Sie die Auskommentierung der vier kommentierten Zeilen im Skript SpatializeOnOff auf. Das Skript sieht nun wie folgt aus:
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Audio; [RequireComponent(typeof(AudioSource))] public class SpatializeOnOff : MonoBehaviour { public GameObject ButtonTextObject; public AudioMixerGroup RoomEffectGroup; public AudioMixerGroup MasterGroup; private AudioSource m_SourceObject; private bool m_IsSpatialized; private TMPro.TextMeshPro m_TextMeshPro; public void Start() { m_SourceObject = gameObject.GetComponent<AudioSource>(); m_TextMeshPro = ButtonTextObject.GetComponent<TMPro.TextMeshPro>(); SetSpatialized(); } public void SwapSpatialization() { if (m_IsSpatialized) { SetStereo(); } else { SetSpatialized(); } } private void SetSpatialized() { m_IsSpatialized = true; m_SourceObject.spatialBlend = 1; m_TextMeshPro.SetText("Set Stereo"); m_SourceObject.outputAudioMixerGroup = RoomEffectGroup; } private void SetStereo() { m_IsSpatialized = false; m_SourceObject.spatialBlend = 0; m_TextMeshPro.SetText("Set Spatialized"); m_SourceObject.outputAudioMixerGroup = MasterGroup; } }
Nachdem die Auskommentierung dieser Zeilen aufgehoben wurde, werden dem Fenster „Inspector“ des Skripts SpatializeOnOff zwei Eigenschaften hinzufügt. Weisen Sie diese im Fenster „Inspektor“ der SpatializeOnOff-Komponente des Quadrupel zu:
- Legen Sie die Eigenschaft Room Effect Group auf Ihre neue Room Effect-Mixergruppe fest.
- Legen Sie die Eigenschaft Master Group auf die Master-Mixergruppe fest.