AudioListener

顯示已棄用項目

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

AudioListener記錄從周圍的AudioEmitters在3D世界中的音頻流。它提供單個 輸出 孔,可以通過 Wires 。如果父親是 AttachmentCameraPVInstance ,父親的世界 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

概要

屬性

方法

活動

屬性

AngleAttenuation

BinaryString
Roblox 安全性
平行讀取

代表一個角度過大的音量曲線,會影響 AudioListener 如何聽到 AudioEmitter 的音量,取決於它們之間的角度和與 LookVector 相關的 AudioListener

此屬性是內部的,無法由腳本存取;它存在於支持複製的目的。請參閱 SetAngleAttenuation() 獲得使用細節。

AudioInteractionGroup

平行讀取

控制哪些 AudioEmitters 對此 AudioListener 可聽到。共享互動群組的發射者可以被此收聽器聽到。

DistanceAttenuation

BinaryString
Roblox 安全性
平行讀取

代表一個在距離上的曲線,會影響 AudioListener 聽到任何 AudioEmitters 的音量,根據彼此之間的距離。

此屬性是內部的,無法由腳本存取;它存在於支持複製的目的。請參閱 SetDistanceAttenuation() 獲得使用細節。

平行讀取

控制音響模擬的細節程度對於此 AudioListener , 類似於 MeshPart.CollisionFidelityMeshPart.RenderFidelity

AudioListenersAudioEmitters 不同意必要的細節程度的選項將使用較少的細節程度。

方法

GetAngleAttenuation

返回表映射角度到量。鑰匙是 0180 (包括在內)之間的數字,而值是 01 (包括在內)之間的數字,用於描述音量如何依據方向減輕。此方法如果使用預設角度減輕曲線,將返回空表;如果使用預設角度減輕曲線,則返回空表。


返回

表映射角度到音量,如上述所述。

GetAudibilityFor

計算 AudioEmitter 對此聆聽者來說有多麼可聽。結果的音量,範圍為 01,對發射者和接收者的距離和角度減弱起作用。

參數

emitter: AudioEmitter
預設值:""

返回

GetConnectedWires

Instances

返回連接到指定頂針的 Wires 數組。 AudioListener 有一個「輸出」頂針。

參數

pin: string
預設值:""

返回

Instances

GetDistanceAttenuation

返回表映射距離到音量。鑰匙是大於或等於 0 的數字,而值是介於 0 和 1(包括)之間的數字,用於描述音量在距離上減弱。此方法如果使用預設距離減衰曲線,將返回空表。


返回

GetInputPins


返回

GetInteractingEmitters

Instances

返回一個由 AudioEmitters 共享 AudioInteractionGroup 與收聽器的數組。


返回

Instances

GetOutputPins


返回

SetAngleAttenuation

()

設置一個角度超過音量曲線,影響 AudioListener 如何聽到 AudioEmitter 的音量,取決於它們之間的角度和與 LookVector 相關的 AudioListener

曲線由表映射角度鍵與音量值表示。鑰匙應該是 0180 (包括在內)之間的唯一數字,而值應該是 01 (包括在內)之間的數字。支持包含最多 400 個鑰匙值對的表。

從角度來看, 的音量由線性插值決定,其中曲線上的點的角值直接高於或低於 的音量級別。如果沒有下面的 a 點或沒有上面的 a 點,則選擇另一個點的音量等級。本質上,曲線是由直線連接的一系列點,其左端和右端點之外,曲線在各自的音量水平上向外延伸。

這個音量將與所有其他減衰曲線的音量(包括發送的 AudioEmitter )乘以以獲得最終的可聽度。

如果表是空或 nil ,則 AudioEmitter 默認使用角度減衰曲線的恆定體積值 1

參數

curve: Dictionary
預設值:""

返回

()

SetDistanceAttenuation

()

設置一個距離上的音量曲線,會影響 AudioListener 聽到任何 AudioEmitters 的音量,根據彼此之間的距離。

曲線由表映射距離鍵與音量值代表。鑰匙應為大於或等於 0 的獨特數字,而值應為 0 到 1(包括)之間的數字。支持包含最多 400 個鑰匙值對的表。

從遠處觀察的 的音量由線性插值決定,其中曲線上的點的距離值直接高於或低於 。如果沒有下面的 d 點或沒有上面的 d 點,則選擇另一個點的音量等級。本質上,曲線是由直線連接的一系列點,其左端和右端點之外,曲線在各自的音量水平上無限延伸。

這個音量將與所有其他減衰曲線的音量(包括發送的 AudioEmitter )乘以以獲得最終的可聽度。

如果表是空或 nil ,則 AudioListener 默認適用一個恆定的音量 1 到處。

參數

curve: Dictionary
預設值:""

返回

()

活動

WiringChanged

Wire 連接或解除連接後發生的事件,該 Wire 現在或之前已連接到 AudioListener 上的某個彈片或其他可連接的實例。

參數

connected: boolean

是否連接或解除連接實例。

pin: string

AudioListener 上的彈簧,用於 Wire 目標。

wire: Wire

之間的 WireAudioListener 和其他實例之間。

instance: Instance

通過 Wire 連接的另一個實例,或是已連接的實例。