X3DAUDIO_LISTENER-Struktur (x3daudio.h)
Definiert einen Punkt des 3D-Audioempfangs.
Syntax
typedef struct X3DAUDIO_LISTENER {
X3DAUDIO_VECTOR OrientFront;
X3DAUDIO_VECTOR OrientTop;
X3DAUDIO_VECTOR Position;
X3DAUDIO_VECTOR Velocity;
X3DAUDIO_CONE *pCone;
} X3DAUDIO_LISTENER, *LPX3DAUDIO_LISTENER;
Member
OrientFront
Ausrichtung der Frontrichtung. Wenn pCone NULL ist , wird OrientFront nur für Matrix- und Verzögerungsberechnungen verwendet. Wenn pCone nicht NULL ist , wird OrientFront für Matrix-, LPF- (sowohl direkte als auch Reverbpfade) und Reverb-Berechnungen verwendet. Dieser Wert muss bei Verwendung mit OrientTop orthonormal sein.
OrientTop
Ausrichtung der Oberen Richtung, nur für Matrix- und Verzögerungsberechnungen verwendet. Dieser Wert muss bei Verwendung von OrientFront orthonormal sein.
Position
Position in benutzerdefinierten Welteinheiten. Dieser Wert wirkt sich nicht auf die Geschwindigkeit aus.
Velocity
Geschwindigkeitsvektor in benutzerdefinierten Welteinheiten pro Sekunde, nur für Dopplerberechnungen verwendet. Dieser Wert wirkt sich nicht auf die Position aus.
pCone
Zeiger auf eine X3DAUDIO_CONE Struktur für diesen Listener. Wenn Sie einen Listenerkegel bereitstellen, wird angegeben, dass zusätzliche Berechnungen bei der Ermittlung der Lautstärke und beim Filtern von DSP-Parametern für einzelne Soundquellen durchgeführt werden. Ein NULL pCone-Wert gibt einen omnidirektionalen Sound an, und es wird keine Kegelverarbeitung angewendet. pCone wird nur für Matrix-, LPF- (sowohl direkte als auch Reverbpfade) und Reverb-Berechnungen verwendet.
Hinweise
X3DAudio verwendet ein kartesisches Koordinatensystem mit linkshändigem kartesischen Koordinatensystem, wobei die Werte auf der x-Achse von links nach rechts, auf der y-Achse von unten nach oben und auf der Z-Achse von nah nach fern steigen. Azimuths werden im Uhrzeigersinn von einer bestimmten Bezugsrichtung gemessen.
Um X3DAudio mit rechtshändigen Koordinaten zu verwenden, müssen Sie das .z-Element von OrientFront, OrientTop, Position und Velocity negieren.
Der Parametertyp X3DAUDIO_VECTOR wird in DirectX::XMFLOAT3 eingegeben, um Gleitkommawerte für x, y und z bereitzustellen.
Die vorderen und oberen Vektoren eines Listeners müssen orthonormal sein. Um als orthonormal betrachtet zu werden, muss ein Vektorpaar eine Größe von 1 +- 1x10-5 und ein Punktprodukt von 0 +- 1x10-5 haben.
Plattformanforderungen
Windows 10 (XAudio2.9); Windows 8, Windows Phone 8 (XAudio 2.8); DirectX SDK (XAudio 2.7)Anforderungen
Anforderung | Wert |
---|---|
Header | x3daudio.h |