Oggetti sonori

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

La riproduzione audio avviene tramite oggetti Sound che emettono audio all'interno di un'esperienza. Roblox assegna a ciascun asset audio un ID unico che puoi assegnare agli oggetti Sound per riprodurre un effetto sonoro o una traccia musicale specifica. Puoi impostare questo audio per riprodurlo automaticamente durante l'esecuzione o attivarlo per riprodurre da script.

Per modificare la riproduzione di più oggetti Sound, puoi assegnarli a un gruppo sonoro e controllare il volume dell'intero gruppo, oltre ad applicare effetti dinamici.

Crea oggetti sonori

Ci sono tre posizioni in cui puoi creare un oggetto Sound, e ciascuna posizione determina come l'audio emette e come cambia il volume in relazione alla posizione dell'utente all'interno dell'esperienza.

PosizioneCome emette l'audioCome cambia il volume
Figlio di un blocco, sfera o cilindro BasePart.L'audio emette verso l'esterno dall'intera superficie del pezzo.Il volume cambia a seconda della distanza tra l'ascoltatore audio dell'utente e la posizione del pezzo, nonché delle sue dimensioni.
Figlio di un Attachment, MeshPart, TrussPart, WedgePart o CornerWedgePart.L'audio emette verso l'esterno dal singolo punto di attacco o dal centro del pezzo.Il volume cambia a seconda della distanza tra l'ascoltatore audio dell'utente e la posizione dell'attacco/pezzo.
All'interno di SoundService o Workspace.L'audio emette per tutta l'esperienza.Il volume e la posizione del pan rimangono gli stessi indipendentemente dalla posizione o rotazione dell'ascoltatore audio dell'utente.

Audio posizionale

L'audio posizionale è audio che gli utenti possono ascoltare solo vicino a una posizione specifica all'interno dell'esperienza. Ci sono due tipi di audio posizionale che puoi utilizzare: volumetrico e sorgente punto.

Volumetrico

L'audio volumetrico è l'opzione audio più realistica, poiché cambia dinamicamente a seconda della posizione dell'utente rispetto alla sorgente audio. Ad esempio, se l'utente si trova all'interno di un BasePart con un oggetto Sound figlio, l'audio si riproduce intorno all'utente, simile alla musica nelle cuffie che suona alla stessa volume in ciascun altoparlante. Quando l'utente esce dal pezzo, l'audio diminuisce gradualmente in volume e diventa più direzionale per altoparlante, muovendosi intorno alla testa dell'utente quando il suo ascoltatore ruota. Per informazioni sulle proprietà che controllano quanto è forte l'audio a diverse distanze dal pezzo, vedere RollOffMinDistance e RollOffMaxDistance.

La dimensione del BasePart influisce anche sul volume dell'audio, poiché pezzi BasePart più grandi producono un'area più ampia in cui gli utenti possono sentire l'audio e quando un utente si allontana da un grande BasePart, il volume diminuisce più lentamente. Il seguente esempio mostra un BasePart delle dimensioni di una città con un oggetto Sound che riproduce audio ambientale. Gli utenti A e B sperimentano l'audio in modo diverso: l'utente B è più vicino al grande BasePart, e sente principalmente l'audio intorno allo stesso volume in entrambi gli altoparlanti. Al contrario, l'utente A è più lontano dalla città, quindi l'audio che sentono è più silenzioso e più direzionale rispetto all'utente B, suonando a volumi diversi in ciascuno dei loro altoparlanti.

L'audio volumetrico è utile per qualsiasi audio che deve essere immersivo intorno a un utente e cambiare dinamicamente a seconda della posizione dell'utente, come un palco di concerto o zone ambientali come la pioggia. Quando sperimenti posizionando un oggetto Sound su pezzi BasePart di diverse dimensioni e posizioni rispetto agli utenti, puoi sentire quanto può essere immersivo l'audio volumetrico.

Per creare un oggetto Sound per audio volumetrico:

  1. Nella finestra Explorer, seleziona SoundService.

  2. Nella finestra Properties, vai alla proprietà VolumetricAudio, quindi impostala su Enabled.

  3. Nella finestra Explorer, passa il mouse su un BasePart, quindi fai clic sul pulsante ⊕. Viene visualizzato un menu contestuale.

  4. Dal menu, inserisci un Sound.

  5. Nella finestra Properties, vai alla proprietà SoundId e inserisci un valido ID asset audio.

  6. (Facoltativo) Se desideri che l'audio inizi a suonare quando inizia l'esperienza, abilita la proprietà Playing.

Sorgente punto

Contrariamente all'audio volumetrico, l'audio sorgente punto emette solo da un singolo punto sorgente. Questo tipo di audio è utile per esplosioni, rumori d'impatto, dispositivi elettronici e dialoghi.

Per creare un oggetto Sound per audio sorgente punto:

  1. Nella finestra Explorer, passa il mouse su un attacco, truss, wedge o corner wedge, quindi fai clic sul pulsante ⊕. Viene visualizzato un menu contestuale.
  2. Dal menu, inserisci un Sound.
  3. Nella finestra Properties, vai alla proprietà SoundId e inserisci un valido ID asset audio.
  4. (Facoltativo) Se desideri che l'audio inizi a suonare quando inizia l'esperienza, abilita la proprietà Playing.

Audio di sottofondo

L'audio di sottofondo suona allo stesso volume indipendentemente da dove si sposta l'utente all'interno della tua esperienza. Questo tipo di audio è utile per la musica che vuoi riprodurre per gli utenti, specialmente quando vuoi creare una colonna sonora di più file audio.

È meglio mantenere tutti gli oggetti Sound per audio di sottofondo in un'unica posizione del Workspace per motivi di organizzazione mentre continui ad aggiungere e modificare audio all'interno della tua esperienza. Il seguente esempio memorizza il nuovo oggetto Sound all'interno del contenitore SoundService, poiché questo servizio determina come gli oggetti Sound suonano nelle esperienze.

Per creare un oggetto Sound per audio di sottofondo:

  1. Nella finestra Explorer, passa il mouse su SoundService, quindi fai clic sul pulsante ⊕. Viene visualizzato un menu contestuale.
  2. Dal menu, inserisci un Sound.
  3. Nella finestra Properties, vai alla proprietà SoundId e inserisci un valido ID asset audio.
  4. (Facoltativo) Se desideri che l'audio inizi a suonare quando inizia l'esperienza, abilita la proprietà Playing.
  5. (Facoltativo) Se questo oggetto Sound è l'unica traccia che desideri riprodurre nel luogo, attiva la sua proprietà Looped.

Personalizza oggetti sonori

Le proprietà degli oggetti Sound lavorano insieme per influenzare come gli utenti sperimentano il tuo audio, come:

Volume

La proprietà Volume ti consente di impostare il volume del tuo audio ovunque da 0 (silenzio) a 10 (fortissimo). Se desideri cambiare il volume di più oggetti Sound contemporaneamente, genitore questi sotto un gruppo sonoro.

RollOffMinDistance e RollOffMaxDistance

RollOffMinDistance e RollOffMaxDistance determinano l'intervallo di come un utente percepisce il volume dall'audio posizionale. Per l'audio volumetrico, RollOffMinDistance è la distanza minima in stud che l'audio inizia a diminuire di volume quando l'ascoltatore del client si allontana dal parent BasePart, e la proprietà RollOffMaxDistance è la distanza massima in stud che un ascoltatore del client può sentire l'audio dalla superficie dell'oggetto.

Per l'audio sorgente punto, RollOffMinDistance e RollOffMaxDistance funzionano in modo simile all'audio volumetrico, ma la distanza di roll off che queste proprietà controllano non circonda l'oggetto, influisce solo sulla distanza verso l'esterno dalla sorgente punto.

RollOffMode

La proprietà RollOffMode ti consente di decidere come l'audio sfuma man mano che aumenta la distanza tra l'ascoltatore dell'utente e il parent dell'oggetto Sound. Puoi impostare questa proprietà su uno dei quattro valori dell'enumerazione Enum.RollOffMode.

RollOffModeDescrizione
Inverse (predefinito)Il volume svanisce inizialmente bruscamente da RollOffMinDistance, ma il svanire del volume diventa più graduale man mano che un utente si avvicina a raggiungere il RollOffMaxDistance. Una volta che raggiungono il RollOffMaxDistance, l'audio diventa silenzioso.
LinearIl volume svanisce linearmente tra RollOffMinDistance e RollOffMaxDistance. Una volta che un utente raggiunge il RollOffMaxDistance, l'audio diventa silenzioso.
InverseTaperedIl volume segue il modello inverso quando è vicino a RollOffMinDistance e il modello lineare quadrato quando un utente è vicino a RollOffMaxDistance. L'audio si avvicina al silenzio al punto di distanza massima.
LinearSquareIl volume svanisce tra RollOffMinDistance e RollOffMaxDistance con una relazione quadratica lineare. L'audio si avvicina al silenzio al punto di distanza massima.

PlaybackSpeed

La proprietà PlaybackSpeed ti consente di determinare la velocità con cui il tuo audio viene riprodotto. Ad esempio, se imposti il PlaybackSpeed su un valore di 2, il tuo audio viene riprodotto due volte più velocemente e un'ottava più alta in tono. Allo stesso modo, se lo imposti su un valore di 0.5, il tuo audio viene riprodotto due volte più lentamente e un'ottava più bassa in tono.

TimePosition

La proprietà TimePosition mostra, in secondi, a che punto all'interno del campione audio l'utente è attualmente in ascolto. Questa proprietà è utile per riprodurre solo una sezione del campione audio, o attivare un evento per avvenire una volta che l'audio raggiunge una posizione specifica. Ad esempio, il seguente esempio di codice fa sì che un emettitore di particelle emetta una particella di anello bianco sopra un pezzo all'interno di un intervallo di tempo limitato di una traccia audio.


local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
-- Crea un nuovo pezzo
local part = Instance.new("Part")
part.Anchored = true
part.Color = Color3.new(0.75, 0.2, 0.5)
part.Size = Vector3.new(2, 1, 2)
part.Material = Enum.Material.Neon
part.Position = Vector3.new(0, 4, 0)
part.Parent = Workspace
-- Crea un attacco sul pezzo
local attachment = Instance.new("Attachment")
attachment.Position = Vector3.new(0, 0.5, 0)
attachment.Parent = part
-- Crea un emettitore di particelle sull'attacco
local emitter = Instance.new("ParticleEmitter")
emitter.Rate = 5
emitter.Lifetime = NumberRange.new(1.5, 1.5)
emitter.Texture = "rbxassetid://1266170131"
emitter.Speed = NumberRange.new(1, 1)
emitter.Size = NumberSequence.new{NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(1, 6)}
emitter.Transparency = NumberSequence.new{NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.25, 0), NumberSequenceKeypoint.new(1, 1)}
emitter.Orientation = Enum.ParticleOrientation.VelocityPerpendicular
emitter.Parent = attachment
-- Crea un suono sull'attacco
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://1835405646"
sound.Parent = attachment
-- Riproduci il suono
sound:Play()
-- Inizia a controllare se l'emettitore deve essere abilitato
RunService.Heartbeat:Connect(function()
-- Abilita l'emettitore all'interno di un intervallo di tempo dell'audio; altrimenti disabilitalo
emitter.Enabled = sound.TimePosition >= 5 and sound.TimePosition < 20
end)

Looped

La proprietà Looped ti consente di ripetere l'audio dopo che ha finito di suonare. Quando impostata su true, l'audio dell'oggetto Sound viene riprodotto nuovamente. Questo è utile da applicare all'audio di sottofondo per garantire che la tua esperienza non abbia mai un silenzio brusco.

Oggetti sonori da script

Riproduci audio in modo contestuale

A parte la riproduzione automatica dell'audio tramite la proprietà Playing dell'oggetto Sound, puoi riprodurre audio in modo contestuale da uno LocalScript chiamando Play() sull'oggetto Sound corrispondente. Ad esempio:


local Workspace = game:GetService("Workspace")
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://9120386436"
sound.Looped = true
sound.Parent = Workspace
sound:Play()

Alternativamente, se il luogo presenterà più tracce, puoi riprodurre una traccia specifica da uno LocalScript:


local SoundService = game:GetService("SoundService")
local musicTrack = SoundService:FindFirstChild("LucidDream")
if musicTrack and not musicTrack.IsPlaying then
musicTrack:Play()
end

Riproduci audio dell'interfaccia

Puoi riprodurre audio dell'interfaccia per GuiObjects come pulsanti collegando un oggetto Sound all'evento listener Activated. Questo ti consente di fornire feedback uditivo agli utenti, ad esempio quando ci passano sopra o lo premono.

Per riprodurre l'audio di un oggetto Sound quando un utente attiva un TextButton o ImageButton:

  1. Nella finestra Explorer, passa il mouse su TextButton o ImageButton, poi fai clic sul pulsante ⊕. Viene visualizzato un menu contestuale.
  2. Dal menu, inserisci un LocalScript o un Script con RunContext impostato su Enum.RunContext.Client.
  3. Incolla il seguente codice nello script, quindi sostituisci SOUND_NAME con il nome di un oggetto Sound situato all'interno del contenitore SoundService.

local SoundService = game:GetService("SoundService")
local button = script.Parent
local sound = SoundService:FindFirstChild("SOUND_NAME")
if not sound.isLoaded then
sound.Loaded:Wait()
end
local function onButtonActivated()
if sound and not sound.IsPlaying then
sound:Play()
end
end
button.Activated:Connect(onButtonActivated)
© 2026 Roblox Corporation. Roblox, il logo Roblox e Powering Imagination sono tra i nostri marchi registrati e non registrati negli Stati Uniti. e altri paesi.