AudioListener3D
覆盖听到声音的位置。
描述
一旦添加到场景树并使用 make_current() 启用,该节点将覆盖听到声音的位置。这可用于从与 Camera3D 不同的位置聆听。
属性
|
方法
void |
|
get_listener_transform() const |
|
is_current() const |
|
void |
枚举
enum DopplerTracking: 🔗
DopplerTracking DOPPLER_TRACKING_DISABLED = 0
禁用多普勒效应模拟(默认)。
DopplerTracking DOPPLER_TRACKING_IDLE_STEP = 1
通过跟踪在 _process 中改变的物体位置来模拟多普勒效应。该监听器相对于这些物体的相对速度的变化会影响音频的感知方式(改变音频的 AudioStreamPlayer3D.pitch_scale)。
DopplerTracking DOPPLER_TRACKING_PHYSICS_STEP = 2
通过跟踪在 _process 中改变的物体位置来模拟多普勒效应。该监听器相对于这些物体的相对速度的变化会影响音频的感知方式(改变音频的 AudioStreamPlayer3D.pitch_scale)。
属性说明
DopplerTracking doppler_tracking = 0 🔗
void set_doppler_tracking(value: DopplerTracking)
DopplerTracking get_doppler_tracking()
如果不是 DOPPLER_TRACKING_DISABLED,则该监听器将在特定的 _process 方法中,为变化的对象模拟多普勒效应。
注意:多普勒效应仅在 AudioStreamPlayer3D.doppler_tracking 未设置为 AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED 时才会在 AudioStreamPlayer3D 上听到。
方法说明
void clear_current() 🔗
禁用该监听器,用当前相机的监听器代替。
Transform3D get_listener_transform() const 🔗
返回该监听器的全局正交归一化 Transform3D。
如果使用 make_current() 将监听器设为当前,则返回 true,否则返回 false。
注意:场景树中标记为“当前”的 AudioListener3D 可能不止一个,但只会使用最后被设置为当前的那个。
void make_current() 🔗
启用该监听器。将覆盖当前相机的监听器。