Oggetti sonori

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

Il riproduzione audio avviene attraverso Sound.Roblox assegna ad ogni risorsa audio un ID univoco che puoi assegnare a 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 dagli script .

Per modificare il riproduzione di più oggetti , puoi assegnarli a un gruppo sonoro e controllare il volume di tutto il Gruppo, nonché applicare effetti dinamici .

Crea oggetti sonori

Ci sono tre luoghi in cui puoi creare un oggetto Sound e ogni luogo determina come l'audio viene emesso e le modifiche del volume in relazione alla posizione dell'utente all'interno dell'esperienza.

PosizioneCome l'audio emetteCome cambia il volume
Figlio di un blocco, sfera o cilindro BasePart .L'audio si diffonde verso l'esterno dall'intera superficie della parte.Cambiamenti di volume a seconda della distanza tra il lettore sonoro dell'utente e la posizione della parte, nonché delle sue dimensioni.
Figlio di un Attachment , MeshPart , TrussPart , WedgePart , o CornerWedgePart .L'audio si diffonde verso l'esterno dal punto di attacco singolo o dal centro della parte.Cambiamenti di volume a seconda della distanza tra il lettore sonoro dell'utente e la posizione dell'attachment/part.
Entro SoundService o Workspace .L'audio viene emesso durante l'esperienza.La posizione del volume e del pannello rimane la stessa indipendentemente dalla posizione o dalla rotazione dell'ascoltatore sonoro dell'utente.

audio/suonoposizionale

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

Volumetrico

L'audio volumetrico è l'opzione audio più realistica, poiché cambia dinamicamente a seconda della posizione dell'utente rispetto alla Sorgenteaudio.Ad esempio, se l'utente è all'interno di un BasePart con un oggetto figlio Sound , l'audio si riproduce intorno all'utente, simile alla musica negli auricolari che suona allo stesso volume in ogni altoparlante.Quando l'utente esce dalla parte, l'audio diminuisce gradualmente di volume e diventa più direzionale per ogni altoparlante, muovendosi intorno alla testa dell'utente quando il suo ascoltatore ruota.Per informazioni sulle proprietà che controllano quanto è forte il tuo audio a diverse distanze dalla parte, vedi RollOffMinDistance e RollOffMaxDistance .

Anche la dimensione del BasePart influisce sul volume dell'audio/suono, poiché le più grandi BaseParts producono un'area più ampia in cui gli utenti possono sentire l'audio e quando un utente naviga lontano da una grande BasePart , il volume diminuisce più lentamente.L'esempio seguente mostra un BasePart che è la dimensione di una città con un oggetto Sound che riproduce l'audio/suonoambientale.Gli utenti A e B sperimentano l'audio in modo diverso: l'utente B è più vicino al grande BasePart , e sentono principalmente l'audio con la stessa intensità in entrambi i diffusori.Al contrario, l'utente A è più lontano dalla città, quindi l'audio che sente è più tranquillo e più direzionale rispetto all'utente B, che suona a volume diverso 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 una fase di concerto o zone ambientali come la pioggia.Quando sperimenti il posizionamento di un oggetto Sound su BaseParts di diverse dimensioni e posizioni dagli utenti, puoi sentire come può essere l'audio volumetrico immersivo.

Per creare un oggetto Sound volumetrico per l'audio/suono:

  1. Nella finestra Explorer , seleziona SoundService .

  2. Nella finestra Proprietà , naviga alla proprietà VolumetricAudio , quindi impostala su Abilitato .

  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 Suono .

  5. Nella finestra Proprietà , naviga alla proprietà SoundId e inserisci un ID audio valido ID audio.

  6. (Opzionale) Se vuoi che l'audio inizi a riprodursi quando l'esperienza inizia, abilita la Proprietà Riproduzione .

Fonte di punto

A differenza dell'audio/suonovolumetrico, l'audio a sorgente puntiforme emette solo da un singolo punto di Sorgente.Questo tipo di audio è utile per esplosioni, rumori d'impatto, dispositivi elettronici e dialoghi.

Per creare un oggetto Sound per la fonte audio/suonoa punto:

  1. Nella finestra Explorer , passa il mouse su un allegato, truss, cuneo o cuneo d'angolo, quindi fai clic sul pulsante ⊕. Viene visualizzato un menu contestuale.
  2. Dal menu, inserisci un Suono .
  3. Nella finestra Proprietà , naviga alla proprietà SoundId e inserisci un ID audio valido ID audio.
  4. (Opzionale) Se vuoi che l'audio inizi a riprodursi quando l'esperienza inizia, abilita la Proprietà Riproduzione .

audio/suonodi sfondo

L'audio di sottofondo viene riprodotto allo stesso volume, non importa dove l'utente viaggia all'interno della tua esperienza.Questo tipo di audio è utile per la musica che vuoi suonare per gli utenti, soprattutto quando vuoi creare una colonna sonora di più file audio.

È meglio mantenere tutti gli oggetti Sound per l'audio di sfondo in una singola posizione dello Spazio di lavoro per scopi di organizzazione mentre continui ad aggiungere e modificare l'audio all'interno della tua esperienza.L'esempio seguente memorizza il nuovo oggetto Sound sotto il container SoundService, poiché questo servizio determina come gli oggetti Sound giocano nelle esperienze.

Per creare un oggetto Sound per l'audio/suonodi sfondo:

  1. Nella finestra Explorer , passa il mouse su SoundService , quindi fai clic sul pulsante ⊕. Viene visualizzato un menu contestuale.
  2. Dal menu, inserisci un Suono .
  3. Nella finestra Proprietà , naviga alla proprietà SoundId e inserisci un ID audio valido ID audio.
  4. (Opzionale) Se vuoi che l'audio inizi a riprodursi quando l'esperienza inizia, abilita la Proprietà Riproduzione .
  5. (Opzionale) Se questo oggetto Sound è l'unica traccia che vuoi riprodurre nel Posto, abilita la sua Proprietà Looped .

Personalizza oggetti sonori

Sound le proprietà dell'oggetto lavorano insieme per influenzare il modo in cui gli utenti sperimentano il tuo audio/suono, come:

  • Quanto sono forti nell'udire audio specifico individualmente e in relazione l'uno all'altro ( Volume ).
  • Come percepiscono il volume quando si allontanano dalla fonte audio ( RollOffMinDistance , RollOffMaxDistance e RollOffMode )
  • Quale parte dell'audio possono ascoltare ( TimePosition ).
  • Quanto velocemente e a quale pitch lo sentono ( PlaybackSpeed ).
  • Se l'audio viene riprodotto automaticamente al completamento ( Looped ).

Volumeno

La proprietà Volume consente di impostare il volume del tuo audio ovunque da 0 (silenzio) a 10 (boom).Se vuoi cambiare il volume di più oggetti Sound contemporaneamente, affidali a un gruppo sonoro.

RollOffMinDistance e RollOffMaxDistance

RollOffMinDistance e RollOffMaxDistance determinano il range di come un utente percepisce il volume dall'audio/suonoposizionale.Per l'audio/suonovolumetrico, RollOffMinDistance è la distanza minima in studs in cui l'audio inizia a diminuire di volume quando l'ascoltatore del cliente si allontana dal genitore BasePart , e la proprietà RollOffMaxDistance è la distanza massima in studs in cui un ascoltatore del cliente può sentire l'audio dalla superficie dell'oggetto.

Per l'audio/suonoa sorgente puntiforme, RollOffMinDistance e RollOffMaxDistance lavorano in modo simile all'audio/suonovolumetrico, ma la distanza di roll off che queste proprietà controllano non circonda l'oggetto, influisce solo sulla distanza da fuori punto di Sorgente.

Modo RollOff

La proprietà RollOffMode permette di decidere come l'audio sbiadisce man mano che aumenta la distanza tra l'ascoltatore dell'utente e l'oggetto Sound padre dell'oggetto.Puoi impostare questa proprietà su uno dei quattro valori dell'enum Enum.RollOffMode .

Modo RollOffDescrizione
Inverse (predefinito)Il volume inizialmente scompare improvvisamente da RollOffMinDistance , ma il declino del volume diventa più graduale più vicino a raggiungere il RollOffMaxDistance .Una volta raggiunto il RollOffMaxDistance, l'audio diventa silente.
LinearIl volume sbiadisce lineamente tra RollOffMinDistance e RollOffMaxDistance . Una volta che un utente raggiunge il RollOffMaxDistance , l'audio tace.
InverseTaperedIl volume segue il modello inverso quando è vicino a RollOffMinDistance e il modello quadratico lineare quando un utente è vicino a RollOffMaxDistance .Gli approcci audio raggiungono il silenzio al punto di distanza massimo.
LinearSquareIl volume sbiadisce tra RollOffMinDistance e RollOffMaxDistance con una relazione lineare quadratica. Gli approcci audio raggiungono il silenzio al punto di distanza massimo.

Riproduzione velocità

La proprietà PlaybackSpeed ti consente di determinare la velocità con cui viene riprodotto il tuo audio.Ad esempio, se impostate il PlaybackSpeed a un valore di 2 , il vostro audio si riproduce due volte più veloce e di un'ottava superiore in pitch.Allo stesso modo, se lo impostate a un valore di 0,5 , il vostro audio si riproduce due volte più lentamente e di un'ottava più bassa in pitch.

Posizione temporale

La proprietà TimePosition mostra, in pochi secondi, quale posizione all'interno del campione audio un utente sta attualmente sentendo.Questa proprietà è utile per riprodurre solo una sezione del campione audio o per attivare un evento quando l'audio raggiunge una posizione specifica.Ad esempio, il seguente esempio di codice causa l'emissione di una particella emittente di un anello bianco sopra una parte entro un intervallo di tempo limitato di una traccia audio.


local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
-- Crea una nuova parte
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 allegato sulla parte
local attachment = Instance.new("Attachment")
attachment.Position = Vector3.new(0, 0.5, 0)
attachment.Parent = part
-- Crea un emittente di particelle sull'allegato
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'allegato
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://1835405646"
sound.Parent = attachment
-- Riproduci il suono
sound:Play()
-- Inizia a controllare se l'Emitter debba essere abilitato
RunService.Heartbeat:Connect(function()
-- Abilita l'emittente entro un intervallo di tempo dell'audio/suono; altrimenti disabilitalo
emitter.Enabled = sound.TimePosition >= 5 and sound.TimePosition < 20
end)

Loopato

La proprietà Looped ti consente di ripetere l'audio dopo che ha finito di riprodursi.Quando è impostato su true , l'audio dell'oggetto Sound riproduce di nuovo.Questo è utile per applicare a audio di sfondo per garantire che la tua esperienza non abbia mai silenzio improvviso.

Oggetti sonori di script

Riproduci audio contestualmente

A parte l'audio di riproduzione automatica attraverso la ProprietàSound dell'oggetto Playing, puoi riprodurre l'audio contestualmente da un oggetto LocalScript chiamando Play() sul corrispondente oggetto Sound.Ad esempio:


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

In alternativa, se il luogo presenterà più tracce, puoi riprodurre una traccia specifica da un LocalScript :


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

Riproduci audio/suonodell'interfaccia

Puoi riprodurre l'audio dell'interfaccia per come pulsanti collegando un oggetto ad ascoltatore dell'evento.Questo ti consente di fornire feedback audio agli utenti, come quando passano il mouse su di esso 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, quindi fai clic sul pulsante ⊕ . Viene visualizzato un menu contestuale.
  2. Dal menu, inserisci o 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)