AudioFilter
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
AudioFilter regola il contenuto di frequenza dei flussi audio. Fornisce un input pin e un
Campioni di codice
-- This assumes the workspace contains a Part with an AudioEmitter and an AudioPlayer, and the camera has an AudioListener
local RunService = game:GetService("RunService")
local part: BasePart = workspace.Part
local camera: Camera = workspace.CurrentCamera
local audioPlayer: AudioPlayer = part.AudioPlayer
local audioEmitter: AudioEmitter = part.AudioEmitter
local audioListener: AudioListener = camera.AudioListener
local raycastParams = RaycastParams.new()
raycastParams.FilterDescendantsInstances = {audioEmitter.Parent}
raycastParams.FilterType = Enum.RaycastFilterType.Exclude
-- Create a new AudioFilter
local filter: AudioFilter = Instance.new("AudioFilter")
filter.FilterType = Enum.AudioFilterType.Lowpass12dB
filter.Frequency = 22000
filter.Q = math.sqrt(2) / 2 -- This Q value produces a flat lowpass for the 12dB slope type
filter.Parent = part
-- Put the AudioFilter between the player and the emitter
local function wireTo(source: Instance, target: Instance): Wire
local wire = Instance.new("Wire")
wire.SourceInstance = source
wire.TargetInstance = target
wire.Parent = target
end
wireTo(audioPlayer, filter)
wireTo(filter, audioEmitter)
-- Update the filter based on the positions of the emitter and listener
RunService.Heartbeat:Connect(function()
local emitterPos: Vector3 = part.Position
local listenerPos: Vector3 = camera.CFrame.Position
local raycastResult = workspace:Raycast(emitterPos, (listenerPos - emitterPos), raycastParams)
filter.Frequency = if raycastResult then 500 else 22000
end)
Sommario
Proprietà
Se i flussi audio vengono passati attraverso senza essere influenzati da questo effetto.
Il tipo di curva rappresentato dal Filtro.
La frequenza centrale attorno alla quale il filtro agisce.
Per i filtri di punta e scaffolding, controlla il volume dell'aumento o della riduzione.
Per i picchi, i lowpass, i highpass, i bandpass e i filtri di selezione o di resonanza, controlla la selezione o la resonanza.
Metodi
Restituisce un'arrangione di Wires che sono connessi all' pinspecificato.
Restituisce la risposta di magnitudine del filtro alla frequenza specificata.
Proprietà
Bypass
Se true , i flussi audio sono passati attraverso senza essere influenzati da questo effetto.
Editor
FilterType
Il tipo di risposta di frequenza che verrà utilizzato per filtrare il segnale audio. Ogni tipo di curva influisce sul contenuto di frequenza dell'audio in modi diversi.
Frequency
La frequenza centrale in hertz della curva rappresentata dal Filtro. In generale, l'aggiustamento di questo valore up o down corrisponde a uno spostamento orizzontale nella curva di frequenza generale. Vai da 20 a 22000.
Gain
Il valore di guadagno in decibel usato per determinare il livello di volume della curva rappresentata dal Filtro. Si applica solo quando il FilterType è Peak, LowShelf, o 2>HighShelf2> . Le gamme vanno da -30 a 30.
Il valore di qualità utilizzato per determinare la pendenza o la resonanza della curva rappresentata dal Filtro. Si applica solo quando il FilterType è Peak, Lowpass[x]dB, 2>Highpass[x]dB2>, 5>Bandpass5>,
Per FilterType valori di Lowpass12dB e Highpass12dB, un 1>Q1>
Metodi
GetConnectedWires
Restituisce un array di Wires che sono connessi alla pin specificata. AudioFilter ha una pin "Input" e una pin "Output".
Parametri
Restituzioni
GetGainAt
Restituisce il valore di guadagno, in decibel, della curva di risposta della frequenza rappresentata dal filtro alla frequenza specificata, in hertz. Questo può essere utilizzato per campionare la forma esatta del filtro in luoghi chiave o come intero.
Parametri
La frequenza, in hertz, per campionare.
Restituzioni
Il valore di guadagno, in decibel, alla frequenza specificata.