Метод ISpatialAudioObjectForHrtf::SetPosition (spatialaudiohrtf.h)
Задает положение в трехмерном пространстве относительно прослушивателя, из которого будут отображаться звуковые данные ISpatialAudioObjectForHrtf .
Синтаксис
HRESULT SetPosition(
[in] float x,
[in] float y,
[in] float z
);
Параметры
[in] x
Положение x звукового объекта (в метрах) относительно прослушивателя. Положительные значения находятся справа от прослушивателя, а отрицательные — слева.
[in] y
Положение звукового объекта по оси Y (в метрах) относительно прослушивателя. Положительные значения выше прослушивателя, а отрицательные — ниже.
[in] z
Позиция Z звукового объекта в метрах относительно прослушивателя. Положительные значения отстают от прослушивателя, а отрицательные — впереди.
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В случае сбоя возможные коды возврата включают, но не ограничиваются ими, значения, показанные в следующей таблице.
Код возврата | Описание |
---|---|
|
ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects не был вызван до вызова SetPosition. |
|
Метод SetEndOfStream был вызван явно или неявно в предыдущем проходе обработки звука. SetEndOfStream вызывается системой неявно, если GetBuffer не вызывается в рамках прохода обработки звука (между вызовами ISpatialAudioObjectRenderStreamBase::BeginUpdatingAudioObjects и ISpatialAudioObjectRenderStreamBase::EndUpdatingAudioObjects). |
|
ISpatialAudioObjectForHrtf не имеет типа AudioObjectType_Dynamic. Задайте тип звукового объекта с параметром typeметодом ISpatialAudioObjectRenderStreamBase::ActivateSpatialAudioObjectForHrtf . |
Комментарии
Этот метод можно вызывать только в ISpatialAudioObjectForHrtf типа AudioObjectType_Dynamic. Задайте для типа звукового объекта с параметром type метод ISpatialAudioObjectRenderStreamForHrtf::ActivateSpatialAudioObjectForHrtf .
Для значений позиций используется правая декартовая система координат, где каждая единица представляет 1 метр. Система координат относительно прослушивателя, где источник (x=0,0, y=0,0, z=0,0) представляет центральную точку между ушами прослушивателя.
Если SetPosition никогда не вызывается, в качестве позиции по умолчанию используется источник (x=0,0, y=0,0, z=0,0). После вызова SetPosition заданная позиция будет использоваться для звукового объекта до тех пор, пока позиция не изменится при другом вызове Метода SetPosition.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | spatialaudiohrtf.h |