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 与右手坐标一起使用,必须取消 OrientFront、 OrientTop、 Position 和 Velocity 的 .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 |