ISpatialAudioObject::SetPosition-Methode (spatialaudioclient.h)
Legt die Position im 3D-Raum relativ zum Listener fest, von dem die ISpatialAudioObject-Audiodaten gerendert werden.
Syntax
HRESULT SetPosition(
[in] float x,
[in] float y,
[in] float z
);
Parameter
[in] x
Die x-Position des Audioobjekts in Metern relativ zum Listener. Positive Werte befinden sich rechts vom Listener und negative Werte auf der linken Seite.
[in] y
Die y-Position des Audioobjekts in Metern relativ zum Listener. Positive Werte befinden sich über dem Listener und negative Werte darunter.
[in] z
Die z-Position des Audioobjekts in Metern relativ zum Listener. Positive Werte befinden sich hinter dem Listener und negative Werte vorn.
Rückgabewert
Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, umfassen mögliche Rückgabecodes die in der folgenden Tabelle gezeigten Werte, sind jedoch nicht darauf beschränkt.
Rückgabecode | Beschreibung |
---|---|
|
ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects wurde vor dem Aufruf von SetPosition nicht aufgerufen. |
|
SetEndOfStream wurde in einem vorherigen Audioverarbeitungsdurchlauf entweder explizit oder implizit aufgerufen. SetEndOfStream wird implizit vom System aufgerufen, wenn GetBuffer nicht innerhalb eines Audioverarbeitungsdurchlaufs (zwischen Aufrufen von ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects und ISpatialAudioObjectRenderStreamBase::EndUpdatingAudioObjects) aufgerufen wird. |
|
Das ISpatialAudioObject ist nicht vom Typ AudioObjectType_Dynamic. Legen Sie den Typ des Audioobjekts mit dem type-Parameter auf die ISpatialAudioObjectRenderStreamBase::ActivateSpatialAudioObject-Methode fest. |
Hinweise
Diese Methode kann nur für ein ISpatialAudioObject-Objekt vom Typ AudioObjectType_Dynamic aufgerufen werden. Legen Sie den Typ des Audioobjekts mit dem type-Parameter auf die ISpatialAudioObjectRenderStreamBase::ActivateSpatialAudioObject-Methode fest.
Positionswerte verwenden ein rechtshändiges kartesisches Koordinatensystem, wobei jede Einheit 1 Meter darstellt. Das Koordinatensystem ist relativ zum Listener, bei dem der Ursprung (x=0,0, y=0,0, z=0,0) den Mittelpunkt zwischen den Ohren des Listeners darstellt.
Wenn SetPosition nie aufgerufen wird, wird der Ursprung (x=0.0, y=0.0, z=0.0) als Standardposition verwendet. Nachdem SetPosition aufgerufen wurde, wird die festgelegte Position für das Audioobjekt verwendet, bis die Position mit einem weiteren Aufruf von SetPosition geändert wird.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | spatialaudioclient.h |