Klangobjekte

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Die Audio-Wiedergabe erfolgt über Sound-Objekte, die Audio innerhalb einer Erfahrung ausgeben. Roblox weist jeder Audio-Ressource eine eindeutige ID zu, die Sie Sound-Objekten zuweisen können, um einen bestimmten Soundeffekt oder Musiktrack abzuspielen. Sie können festlegen, ob dieses Audio während der Laufzeit automatisch abgespielt werden soll oder ob es von Skripten abgespielt wird.

Um die Wiedergabe mehrerer Sound-Objekte zu ändern, können Sie diese einer Soundgruppe zuweisen und die Lautstärke der gesamten Gruppe steuern sowie dynamische Effekte anwenden.

Klangobjekte erstellen

Es gibt drei Standorte, an denen Sie ein Sound-Objekt erstellen können, und jeder Standort bestimmt, wie der Klang ausgegeben wird und wie sich die Lautstärke in Relation zur Position des Benutzers innerhalb der Erfahrung ändert.

StandortWie Klang ausgegeben wirdWie sich die Lautstärke ändert
Kind eines Blocks, einer Kugel oder eines Zylinders BasePart.Audio wird von der gesamten Oberfläche des Teils nach außen ausgegeben.Die Lautstärke ändert sich abhängig von der Entfernung zwischen dem Klanglistener des Benutzers und der Position des Teils sowie dessen Größe.
Kind einer Attachment, MeshPart, TrussPart, WedgePart oder CornerWedgePart.Audio wird von dem einzelnen Befestigungspunkt oder dem Zentrum des Teils nach außen ausgegeben.Die Lautstärke ändert sich abhängig von der Entfernung zwischen dem Klanglistener des Benutzers und der Position der Befestigung/des Teils.
Innerhalb von SoundService oder Workspace.Audio wird in der gesamten Erfahrung ausgegeben.Die Lautstärke und die Pan-Position bleiben gleich, unabhängig von der Position oder Rotation des Klanglisteners des Benutzers.

Positionales Audio

Positionales Audio ist Audio, das Benutzer nur in der Nähe einer bestimmten Position innerhalb der Erfahrung hören können. Es gibt zwei Arten von positionale Audio, die Sie nutzen können: volumetrisch und Punktquelle.

Volumetrisch

Volumetrisches Audio ist die realistischste Audio-Option, da es sich dynamisch ändert, abhängig von der Position des Benutzers zur Audioquelle. Zum Beispiel, wenn der Benutzer sich innerhalb eines BasePart mit einem Kind Sound-Objekt befindet, wird das Audio um den Benutzer herum abgespielt, ähnlich wie Musik in Kopfhörern, die mit der gleichen Lautstärke in jedem Lautsprecher spielt. Wenn der Benutzer den Teil verlässt, sinkt das Audio allmählich in der Lautstärke und wird pro Lautsprecher richtungsabhängiger, wobei es sich um den Kopf des Benutzers bewegt, wenn sich deren Listener dreht. Für Informationen zu den Eigenschaften, die steuern, wie laut Ihr Audio in verschiedenen Abständen zum Teil ist, siehe RollOffMinDistance und RollOffMaxDistance.

Die Größe des BasePart beeinflusst ebenfalls die Lautstärke des Audios, da größere BaseParts einen größeren Bereich erzeugen, in dem Benutzer das Audio hören können und wenn ein Benutzer sich von einem großen BasePart entfernt, sinkt die Lautstärke langsamer. Das folgende Beispiel zeigt ein BasePart, das die Größe einer Stadt hat, mit einem Sound-Objekt, das Umgebungsgeräusche abspielt. Die Benutzer A und B erleben das Audio unterschiedlich: Benutzer B ist näher am großen BasePart und hört das Audio in beiden Lautsprechern größtenteils bei der gleichen Lautstärke. Im Gegensatz dazu ist Benutzer A weiter von der Stadt entfernt, sodass das Audio, das sie hören, leiser und richtungsabhängiger ist als das von Benutzer B und in jedem ihrer Lautsprecher unterschiedlich laut abgespielt wird.

Volumetrisches Audio ist nützlich für jegliches Audio, das um einen Benutzer herum immersiv sein muss und sich dynamisch abhängig von der Position des Benutzers ändert, wie eine Konzertbühne oder Atmosphärenzonen wie Regen. Wenn Sie experimentieren, indem Sie ein Sound-Objekt auf BaseParts unterschiedlicher Größen und Positionen von Benutzern platzieren, können Sie hören, wie immersiv volumetrisches Audio sein kann.

Um ein Sound-Objekt für volumetrisches Audio zu erstellen:

  1. Wählen Sie im Explorer-Fenster SoundService aus.

  2. Navigieren Sie im Properties-Fenster zu der Eigenschaft VolumetricAudio und setzen Sie sie auf Enabled.

  3. Bewegen Sie im Explorer-Fenster den Mauszeiger über ein BasePart und klicken Sie dann auf die ⊕-Schaltfläche. Ein Kontextmenü wird angezeigt.

  4. Fügen Sie aus dem Menü einen Sound ein.

  5. Navigieren Sie im Properties-Fenster zur Eigenschaft SoundId und geben Sie eine gültige Audio-Ressourcen-ID ein.

  6. (Optional) Wenn Sie möchten, dass das Audio zu Beginn der Erfahrung abgespielt wird, aktivieren Sie die Eigenschaft Playing.

Punktquelle

Im Gegensatz zu volumetrischem Audio wird punktquellen Audio nur von einem einzigen Punkt ausgegeben. Diese Art von Audio ist nützlich für Explosionen, Aufprallgeräusche, elektronische Geräte und Dialoge.

Um ein Sound-Objekt für Punktquellen-Audio zu erstellen:

  1. Bewegen Sie im Explorer-Fenster den Mauszeiger über eine Befestigung, einen Träger, einen Keil oder einen Eckkeil und klicken Sie dann auf die ⊕-Schaltfläche. Ein Kontextmenü wird angezeigt.
  2. Fügen Sie aus dem Menü einen Sound ein.
  3. Navigieren Sie im Properties-Fenster zur Eigenschaft SoundId und geben Sie eine gültige Audio-Ressourcen-ID ein.
  4. (Optional) Wenn Sie möchten, dass das Audio zu Beginn der Erfahrung abgespielt wird, aktivieren Sie die Eigenschaft Playing.

Hintergrundaudio

Hintergrundaudio wird bei der gleichen Lautstärke abgespielt, ganz gleich, wo sich der Benutzer innerhalb Ihrer Erfahrung befindet. Diese Art von Audio ist nützlich für Musik, die Sie für Benutzer abspielen möchten, insbesondere wenn Sie einen Soundtrack mit mehreren Audiodateien erstellen möchten.

Es ist am besten, alle Sound-Objekte für Hintergrundaudio an einem einzigen Ort des Arbeitsbereichs aufzubewahren, um organisatorische Zwecke zu berücksichtigen, während Sie weiterhin Audio in Ihrer Erfahrung hinzufügen und bearbeiten. Das folgende Beispiel speichert das neue Sound-Objekt im Container SoundService, da dieser Dienst bestimmt, wie Sound-Objekte in Erfahrungen abgespielt werden.

Um ein Sound-Objekt für Hintergrundaudio zu erstellen:

  1. Bewegen Sie im Explorer-Fenster den Mauszeiger über SoundService und klicken Sie dann auf die ⊕-Schaltfläche. Ein Kontextmenü wird angezeigt.
  2. Fügen Sie aus dem Menü einen Sound ein.
  3. Navigieren Sie im Properties-Fenster zur Eigenschaft SoundId und geben Sie eine gültige Audio-Ressourcen-ID ein.
  4. (Optional) Wenn Sie möchten, dass das Audio zu Beginn der Erfahrung abgespielt wird, aktivieren Sie die Eigenschaft Playing.
  5. (Optional) Wenn dieses Sound-Objekt der einzige Track ist, den Sie an diesem Ort abspielen möchten, aktivieren Sie seine Eigenschaft Looped.

Klangobjekte anpassen

Die Eigenschaften des Sound-Objekts wirken zusammen, um zu beeinflussen, wie Benutzer Ihr Audio erleben, wie zum Beispiel:

Lautstärke

Die Eigenschaft Volume ermöglicht es Ihnen, die Lautstärke Ihres Audios von 0 (stumm) bis 10 (donnernd) einzustellen. Wenn Sie die Lautstärke mehrerer Sound-Objekte gleichzeitig ändern möchten, können Sie sie unter einer Soundgruppe zusammenfassen.

RollOffMinDistance und RollOffMaxDistance

RollOffMinDistance und RollOffMaxDistance bestimmen den Bereich, in dem ein Benutzer die Lautstärke aus dem positionalen Audio wahrnimmt. Für volumetrisches Audio ist RollOffMinDistance der minimale Abstand in Stücken, ab dem das Audio zu sinken beginnt, wenn der Listener des Clients sich vom übergeordneten BasePart entfernt, und die Eigenschaft RollOffMaxDistance ist der maximale Abstand in Stücken, den ein Listener des Clients von der Oberfläche des Objekts hören kann.

Für Punktquellen-Audio funktionieren RollOffMinDistance und RollOffMaxDistance ähnlich wie bei volumetrischem Audio, aber der Roll-off-Abstand, den diese Eigenschaften steuern, umgibt das Objekt nicht, sondern beeinflusst nur den Abstand vom Punkt.

RollOffMode

Die Eigenschaft RollOffMode ermöglicht es Ihnen zu bestimmen, wie das Audio abnimmt, wenn der Abstand zwischen dem Listener des Benutzers und dem übergeordneten Sound-Objekt zunimmt. Sie können diese Eigenschaft auf einen der vier Werte des Enum.RollOffMode-Enums setzen.

RollOffModeBeschreibung
Inverse (Standard)Die Lautstärke sinkt zunächst abrupt von RollOffMinDistance, aber das Abblenden der Lautstärke wird allmählicher, je näher ein Benutzer der RollOffMaxDistance kommt. Sobald sie die RollOffMaxDistance erreichen, verstummt das Audio.
LinearDie Lautstärke nimmt linear zwischen RollOffMinDistance und RollOffMaxDistance ab. Sobald ein Benutzer die RollOffMaxDistance erreicht, verstummt das Audio.
InverseTaperedDie Lautstärke folgt dem inversen Modell, wenn sie sich in der Nähe von RollOffMinDistance befindet, und dem linearen quadratischen Modell, wenn ein Benutzer sich in der Nähe von RollOffMaxDistance befindet. Audio nähert sich der Stille an dem maximalen Distanzpunkt.
LinearSquareDie Lautstärke nimmt zwischen RollOffMinDistance und RollOffMaxDistance mit einer linearen quadratischen Beziehung ab. Audio nähert sich der Stille am maximalen Distanzpunkt.

PlaybackSpeed

Die Eigenschaft PlaybackSpeed ermöglicht es Ihnen, die Geschwindigkeit zu bestimmen, mit der Ihr Audio abgespielt wird. Wenn Sie beispielsweise den PlaybackSpeed auf einen Wert von 2 setzen, wird Ihr Audio doppelt so schnell und eine Oktave höher in der Tonhöhe abgespielt. Wenn Sie es auf einen Wert von 0,5 setzen, wird Ihr Audio doppelt so langsam und eine Oktave tiefer in der Tonhöhe abgespielt.

TimePosition

Die Eigenschaft TimePosition zeigt in Sekunden an, an welcher Stelle im Audio-Sample ein Benutzer gerade hört. Diese Eigenschaft ist nützlich, um entweder nur einen Abschnitt des Audio-Samples abzuspielen oder ein Ereignis auszulösen, sobald das Audio eine bestimmte Position erreicht. Zum Beispiel veranlasst der folgende Code, dass ein Partikelausstoßgerät über einem Teil in einem begrenzten Zeitbereich eines Audiotracks einen weißen Ringpartikel ausstößt.


local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
-- Erstelle ein neues Teil
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
-- Erstelle eine Befestigung am Teil
local attachment = Instance.new("Attachment")
attachment.Position = Vector3.new(0, 0.5, 0)
attachment.Parent = part
-- Erstelle einen Partikelausstoßgerät an der Befestigung
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
-- Erstelle einen Klang an der Befestigung
local sound = Instance.new("Sound")
sound.SoundId = "rbxassetid://1835405646"
sound.Parent = attachment
-- Spiele den Klang ab
sound:Play()
-- Beginne zu überprüfen, ob das Ausstoßgerät aktiviert werden soll
RunService.Heartbeat:Connect(function()
-- Aktiviere den Ausstoß innerhalb eines Zeitbereichs des Audios; andernfalls deaktiviere es
emitter.Enabled = sound.TimePosition >= 5 and sound.TimePosition < 20
end)

Looped

Die Eigenschaft Looped ermöglicht es Ihnen, Audio nach dem Abspielen zu wiederholen. Wenn sie auf true gesetzt ist, wird das Audio des Sound-Objekts erneut abgespielt. Dies ist nützlich, um diese Eigenschaft auf Hintergrundaudio anzuwenden, um sicherzustellen, dass Ihre Erfahrung niemals abruptes Schweigen hat.

Skript-Klangobjekte

Audio kontextbezogen abspielen

Abgesehen vom automatischen Abspielen von Audio über die Sound-Objekts-Eigenschaft Playing können Sie Audio kontextbezogen von einem LocalScript abspielen, indem Sie Play() auf dem entsprechenden Sound-Objekt aufrufen. Zum Beispiel:


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

Alternativ, wenn der Ort mehrere Tracks enthalten wird, können Sie einen spezifischen Track aus einem LocalScript abspielen:


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

Schnittstellen-Audio abspielen

Sie können Schnittstellen-Audio für GuiObjects wie Schaltflächen abspielen, indem Sie ein Sound-Objekt mit dem Ereignis-Listener Activated verbinden. Dies ermöglicht es Ihnen, den Benutzern akustisches Feedback zu geben, beispielsweise wenn sie darüber fahren oder es drücken.

Um den Audio eines Sound-Objekts abzuspielen, wenn ein Benutzer eine TextButton oder ImageButton aktiviert:

  1. Bewegen Sie im Explorer Fenster den Mauszeiger über die TextButton oder ImageButton, und klicken Sie dann auf die ⊕-Schaltfläche. Ein Kontextmenü wird angezeigt.
  2. Fügen Sie aus dem Menü entweder ein LocalScript oder ein Script mit RunContext auf Enum.RunContext.Client gesetzt ein.
  3. Fügen Sie den folgenden Code in das Skript ein und ersetzen Sie SOUND_NAME durch den Namen eines Sound-Objekts, das sich im Container SoundService befindet.

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, das Roblox-Logo und "Powering Imagination" gehören zu unseren eingetragenen und nicht eingetragenen Markenzeichen in den USA und anderen Ländern.