Metodo ISpatialAudioObject::SetPosition (spatialaudioclient.h)

Imposta la posizione nello spazio 3D, rispetto al listener, da cui verrà eseguito il rendering dei dati audio ISpatialAudioObject .

Sintassi

HRESULT SetPosition(
  [in] float x,
  [in] float y,
  [in] float z
);

Parametri

[in] x

Posizione x dell'oggetto audio, in metri, rispetto al listener. I valori positivi sono a destra del listener e i valori negativi sono a sinistra.

[in] y

Posizione y dell'oggetto audio, in metri, rispetto al listener. I valori positivi sono superiori al listener e i valori negativi sono riportati di seguito.

[in] z

Posizione z dell'oggetto audio, in metri, rispetto al listener. I valori positivi si trovano dietro il listener e i valori negativi si trovano davanti.

Valore restituito

Se il metodo ha esito positivo, viene restituito S_OK. Se ha esito negativo, i possibili codici restituiti includono, ma non sono limitati, i valori illustrati nella tabella seguente.

Codice restituito Descrizione
SPTLAUDCLNT_E_OUT_OF_ORDER

ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects non è stato chiamato prima della chiamata a SetPosition.

SPTLAUDCLNT_E_RESOURCES_INVALIDATED

SetEndOfStream è stato chiamato in modo esplicito o implicito in un passaggio di elaborazione audio precedente. SetEndOfStream viene chiamato in modo implicito dal sistema se GetBuffer non viene chiamato all'interno di un passaggio di elaborazione audio (tra le chiamate a ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects e ISpatialAudioObjectRenderStreamBase::EndUpdatingAudioObjects).

SPTLAUDCLNT_E_PROPERTY_NOT_SUPPORTED
ISpatialAudioObject non è di tipo AudioObjectType_Dynamic. Impostare il tipo dell'oggetto audio con il parametro di tipo sul metodo ISpatialAudioObjectRenderStreamBase::ActivateSpatialAudioObject .

Commenti

Questo metodo può essere chiamato solo su un ISpatialAudioObject di tipo AudioObjectType_Dynamic. Impostare il tipo dell'oggetto audio con il parametro di tipo sul metodo ISpatialAudioObjectRenderStreamBase::ActivateSpatialAudioObject .

I valori di posizione usano un sistema di coordinate cartesiano a destra, dove ogni unità rappresenta 1 metro. Il sistema di coordinate è relativo al listener in cui l'origine (x=0,0, y=0,0, z=0,0) rappresenta il punto centrale tra le orecchie del listener.

Se SetPosition non viene mai chiamato, l'origine (x=0.0, y=0.0, z=0.0) viene usata come posizione predefinita. Dopo aver chiamato SetPosition , la posizione impostata verrà usata per l'oggetto audio fino a quando la posizione non viene modificata con un'altra chiamata a SetPosition.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione spatialaudioclient.h

Vedi anche

ISpatialAudioObject