AudioListener 记录从周围的 AudioEmitters 在 3D 世界的音频流。它提供了一个单个 输出 端子,可以通过 Wires 连接到其他端子。如果父辈是 Attachment 、 Camera 或 PVInstance ,父父元素的世界 CFrame 将用于收听。如果父级不是这些类别之一,那么 AudioListener 实际上听不到任何东西。
代码示例
local listener = Instance.new("AudioListener")
local output = Instance.new("AudioDeviceOutput")
local wire = Instance.new("Wire")
listener.Parent = workspace.Camera
wire.Parent = listener
output.Parent = wire
wire.SourceInstance = listener
wire.TargetInstance = output
概要
属性
表示发射声音的感知音量根据 AudioEmitter 和 LookVector 与 AudioListener 相关的角度变化。
控制哪些 AudioEmitters 对此 AudioListener 可听。
代表发射声音的感知音量在 AudioEmitters 和 AudioListener 之间的距离增加时如何改变。
方法
获取 AudioListener 使用的角度抵消曲线,或使用默认曲线的空表。
返回与指定的引置顶连接的 Wires 阵列。
获取 AudioListener 使用的距离衰减曲线,或使用默认曲线的空表。
设置 AudioListener 应使用的角度减衰曲线,或使用恒定曲线的音量 1 如果没有提供。
设置 AudioListener 应使用的距离衰减曲线,或在没有提供的情况下使用反向衰减曲线。
活动
当另一个实例通过 AudioListener 连接到或与 Wire 断开时发生火焰。
属性
AngleAttenuation
表示影响 AudioListener 如何听到 AudioEmitter 的音量的角度曲线,其基于他们之间的角度和与 LookVector 相关的 AudioListener 。
该属性是内部的,不能通过脚本访问;它存在于支持复制的目的。见 SetAngleAttenuation() 获取使用详情。
DistanceAttenuation
代表一个影响 AudioListener 听到任何 AudioEmitters 的音量-在距离之间的曲线,基于它们之间的距离。
该属性是内部的,不能通过脚本访问;它存在于支持复制的目的。见 SetDistanceAttenuation() 获取使用详情。
SimulationFidelity
方法
GetAngleAttenuation
返回一个表映射角度到音量。钥匙是在 0 和 180 之间的数字(包括在内),而值是在 0 和 1 之间的数字(包括在内),用于描述音量会随着方向而减弱。该方法如果默认角度减衰曲线正在使用,将返回一个空表。
返回
表映射角度到音量,如上所述。
GetDistanceAttenuation
返回表映射距离到卷。钥匙是大于或等于 0 的数字,而值是介于 0 和 1(包括在内)之间的数字,描述音量在距离上减弱的方式。该方法如果使用默认距离衰减曲线,将返回一个空表。
返回
GetInteractingEmitters
返回
SetAngleAttenuation
设置一个音量对角曲线,影响 AudioListener 如何听到 AudioEmitter 的声音,基于他们之间的角度和与 LookVector 相关的 AudioListener 。
曲线由表映射角键表示到音量值。钥匙应该是 0 和 180 (包括在内)之间的唯一数字,而值应该是 0 和 1 (包括在内)之间的数字。支持包含最多 400 个键值对的表。
从角度 从曲线上的点的音量级之间的线性插补决定了音量级 的音量,其角度值直接高于或低于 。如果没有点低于 a 或没有点高于 a ,则选择另一点的音量级别。本质上,曲线是由直线连接的一系列点,其左端和右端端点之外,曲线在各自的音量水平上向外延伸。
该音量将与所有其他衰减曲线的音量乘以(包括发送的 AudioEmitter )以获得最终可听度。
如果表是空的或 , 那么默认使用角度减衰曲线的恒定体积值 。
参数
返回
SetDistanceAttenuation
设置一个沿距离曲线,该曲线影响 AudioListener 是否会很大声地听到任何 AudioEmitters ,根据它们之间的距离。
曲线由表映射距离键与音量值映射表代表。钥匙应为大于或等于 0 的独特数字,而值应为 0 到 1(包括在内)之间的数字。支持包含最多 400 个键值对的表。
从远处看, 的音量由线性插补确定,其中曲线上的点的距离值直接高于或低于 。如果没有点低于 d 或没有点高于 d ,则选择另一点的音量级别。本质上,曲线是由直线连接的一系列点,其左右端点之外,曲线在各自的音量水平上无限延伸。
该音量将与所有其他衰减曲线的音量乘以(包括发送的 AudioEmitter )以获得最终可听度。
如果表是空的或 nil , 那么 AudioListener 默认应用一致的音量 1 到处地方。
参数
返回
活动
WiringChanged
在 Wire 连接或断开后发生的事件,该 Wire 现在或之前已连接到 AudioListener 上的某个引脚或其他可连接的实例。