X3DAUDIO_LISTENER 结构 (x3daudio.h)

定义 3D 音频接收点。

语法

typedef struct X3DAUDIO_LISTENER {
  X3DAUDIO_VECTOR OrientFront;
  X3DAUDIO_VECTOR OrientTop;
  X3DAUDIO_VECTOR Position;
  X3DAUDIO_VECTOR Velocity;
  X3DAUDIO_CONE   *pCone;
} X3DAUDIO_LISTENER, *LPX3DAUDIO_LISTENER;

成员

OrientFront

前方方向的方向。 当 pCone 为 NULL 时 ,OrientFront 仅用于矩阵和延迟计算。 当 pCone 不是 NULL OrientFront 用于矩阵时,LPF (直接路径和混响路径) 以及混响计算。 使用时,此值必须与 OrientTop 正交。

OrientTop

顶部方向的方向,仅用于矩阵和延迟计算。 使用时,此值必须与 OrientFront 正交。

Position

以用户定义的世界单位表示的位置。 此值不会影响 速度

Velocity

速度向量(以用户定义的世界单位/秒为单位),仅用于多普勒计算。 此值不会影响 位置

pCone

指向此侦听器 X3DAUDIO_CONE 结构的指针。 提供侦听器锥体将指定在确定单个声源的音量和筛选 DSP 参数时执行其他计算。 NULL pCone 值指定全向声音,并且不应用锥体处理。 pCone 仅用于矩阵、LPF (直接路径和混响路径) 以及混响计算。

注解

X3DAudio 使用左手笛卡尔坐标系,x 轴上的值从左到右递增,y 轴上从下到上,z 轴的值从近到远。 方位角是从给定引用方向顺时针测量的。

若要将 X3DAudio 与右手坐标一起使用,必须取消 OrientFrontOrientTopPositionVelocity 的 .z 元素。

参数类型 X3DAUDIO_VECTOR 键入为 DirectX::XMFLOAT3,以提供 x、y 和 z 浮点值。

侦听器的前向量和顶部向量必须是正交向量。 要被视为正态向量,一对矢量的量级必须为 1 +- 1x10-5,点积为 0 +- 1x10-5。

平台要求

Windows 10 (XAudio2.9) ;Windows 8,Windows Phone 8 (XAudio 2.8) ;DirectX SDK (XAudio 2.7)

要求

要求
Header x3daudio.h