Aprenda
Classe do mecanismo
SoundService
Não criável
Serviço

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.


Amostras de código
Sistema de Reverb Dinâmico
local Players = game:GetService("Players")
local CollectionService = game:GetService("CollectionService")
local SoundService = game:GetService("SoundService")
local localPlayer = Players.LocalPlayer
local reverbTags = {
["reverb_Cave"] = Enum.ReverbType.Cave,
}
-- colete partes e agrupe-as por tag
local parts = {}
for reverbTag, reverbType in pairs(reverbTags) do
for _, part in pairs(CollectionService:GetTagged(reverbTag)) do
parts[part] = reverbType
end
end
-- função para verificar se uma posição está dentro das dimensões de uma parte
local function positionInPart(part, position)
local extents = part.Size / 2
local offset = part.CFrame:PointToObjectSpace(position)
return offset.x < extents.x and offset.y < extents.y and offset.z < extents.z
end
local reverbType = SoundService.AmbientReverb
while true do
task.wait()
if not localPlayer then
return
end
local character = localPlayer.Character
-- padrão para nenhum reverb
local newReverbType = Enum.ReverbType.NoReverb
if character and character.PrimaryPart then
local position = character.PrimaryPart.Position
-- percorra todas as partes indexadas
for part, type in pairs(parts) do
-- veja se o personagem está dentro delas
if positionInPart(part, position) then
-- se sim, escolha esse tipo de reverb
newReverbType = type
break
end
end
end
-- defina o tipo de reverb se mudou
if newReverbType ~= reverbType then
SoundService.AmbientReverb = newReverbType
reverbType = newReverbType
end
end

Referência API
Propriedades
AcousticSimulationEnabled
Ler Parallel
Recursos: Audio
SoundService.AcousticSimulationEnabled:boolean

AmbientReverb
Ler Parallel
Recursos: Audio
SoundService.AmbientReverb:Enum.ReverbType

CharacterSoundsUseNewApi
Segurança do plugin
Ler Parallel
Recursos: Audio
SoundService.CharacterSoundsUseNewApi:Enum.RolloutState

DefaultListenerLocation
Segurança do plugin
Ler Parallel
Recursos: Audio
SoundService.DefaultListenerLocation:Enum.ListenerLocation

DistanceFactor
Ler Parallel
Recursos: Audio
SoundService.DistanceFactor:number

DopplerScale
Ler Parallel
Recursos: Audio
SoundService.DopplerScale:number

ListenerCFrame
Ler Parallel
Recursos: Audio
SoundService.ListenerCFrame:CFrame

ListenerObject
Ler Parallel
Recursos: Audio
SoundService.ListenerObject:Instance

ListenerType
Ler Parallel
Recursos: Audio
SoundService.ListenerType:Enum.ListenerType

RespectFilteringEnabled
Ler Parallel
Recursos: Audio
SoundService.RespectFilteringEnabled:boolean

RolloffScale
Ler Parallel
Recursos: Audio
SoundService.RolloffScale:number

VolumetricAudio
Não scriptável
Ler Parallel
Recursos: Audio
SoundService.VolumetricAudio:Enum.VolumetricAudio

Métodos
GetListener
Recursos: Audio
SoundService:GetListener():Tuple
Devolução

GetMixerTime
Recursos: Audio
SoundService:GetMixerTime():number
Devolução

OpenAttenuationCurveEditor
Segurança do plugin
Recursos: Audio
SoundService:OpenAttenuationCurveEditor(selectedCurveObjects:Instances):()
Parâmetros
selectedCurveObjects:Instances
Devolução
()

OpenDirectionalCurveEditor
Segurança do plugin
Recursos: Audio
SoundService:OpenDirectionalCurveEditor(selectedCurveObjects:Instances):()
Parâmetros
selectedCurveObjects:Instances
Devolução
()

PlayLocalSound
Recursos: Audio
SoundService:PlayLocalSound(sound:Instance):()
Parâmetros
sound:Instance
Devolução
()

SetListener
Recursos: Audio
SoundService:SetListener(
listenerType:Enum.ListenerType, listener:Tuple
):()
Parâmetros
listenerType:Enum.ListenerType
listener:Tuple
Devolução
()

©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.