Smoke
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Rauch ist eine der mehrere Partikel emittierenden
Wenn Smoke.Enabled ausgeschaltet
Rauchpartikel werden nur vom Zentrum von BasePart emittiert, zu dem sie übergeordnet sind. Wenn Sie ein Rauchobjekt in ein Attachment übergeordnet, ermöglichen Sie die Anpassung der Startposition der Partikel.
Code-Beispiele
local function recurseForFire(object)
-- Check if we found a Fire object that has no Smoke
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Create a smoke effect for this fire
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- Continue search for Fire objects
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)
Zusammenfassung
Eigenschaften
Bestimmt die Farbe der Rauchpartikel.
Bestimmt, ob Rauchpartikel emittieren.
Bestimmt, wie verschleiert Rauchpartikel rendernwerden.
Bestimmt die Geschwindigkeit der Rauchpartikel.
Bestimmt die Größe neuer Rauchpartikel.
Wert zwischen 0-1, der die Geschwindigkeit des Partikeleffekts steuert.
Eigenschaften
Color
Die Farbeigenschaft bestimmt die Farbe aller Partikel, die von einem Smoke -Objekt (alle bestehenden und zukünftigen Partikel) emittieren. Sie verhält sich ähnlich wie ParticleEmitter.Color , mit der Unterscheidung, dass es nur eine
Code-Beispiele
local function recurseForFire(object)
-- Check if we found a Fire object that has no Smoke
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Create a smoke effect for this fire
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- Continue search for Fire objects
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)
Enabled
Die Eigenschaften, ähnlich wie ParticleEmitter.Enabled, bestimmt, ob Rauchpartikel emittiert werden. Alle Partikel, die bereits emittiert werden, werden weiterhin gerendert, bis ihr Lebenszyklus abgelaufen ist. Diese Eigenschaft ist nützlich, um vor dem Zerstören von Rauchpartikel
local Debris = game:GetService("Debris")
local part = script.Parent
function stopSmoke(smoke)
smoke.Enabled = false -- No more new particles
Debris:AddItem(smoke, 10) -- Remove the object after a delay (after existing particles have expired)
end
stopSmoke(part.Smoke)
Code-Beispiele
local function recurseForFire(object)
-- Check if we found a Fire object that has no Smoke
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Create a smoke effect for this fire
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- Continue search for Fire objects
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)
LocalTransparencyModifier
Opacity
Opacity bestimmt die Opake der Rauchpartikel. Es muss in der Reichweite [0, 1] sein. Dieses Eigenschaft funktioniert inversiv im Vergleich zu der BasePart.Transparency oder ParticleEmitter-Transparenz : ein Wert von 0 ist vollständig unsichtbar, 1 ist vollständig sichtbar.
Die Textur, die Roblox für Smoke Partikel verwendet, ist teilweise durchsichtig, so dass das Festlegen dieser Eigenschaft auf 1 immer noch Transparenz in der gerenderten Rauch erzeugt.
Code-Beispiele
local function recurseForFire(object)
-- Check if we found a Fire object that has no Smoke
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Create a smoke effect for this fire
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- Continue search for Fire objects
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)
RiseVelocity
RiseVelocity verhält sich ähnlich wie ParticleEmitter.Speed und Fire.Heat: Es bestimmt, wie schnell die Rauchpartikel während ihres Lebenswegs bewegen. Es muss in der Reichweite [-25, 25] negatives Werte verursachen, dass Partikel in Richtung Eltern BasePart emittieren.
Wenn Sie einen Smoke Effekt verwenden, um Nebel zu erzeugen, setzen Sie diese Eigenschaft auf 0. Für große Raucheffekte stellen Sie den Anstieg sanft (2 bis 8) ein. Für Schornsteine und Rauchstapel sind höhere Werte angemessen.
Code-Beispiele
local function recurseForFire(object)
-- Check if we found a Fire object that has no Smoke
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Create a smoke effect for this fire
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- Continue search for Fire objects
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)
Size
Die Größe-Eigenschaft von Smoke bestimmt die Größe der neu emittierten Rauchpartikel. Im Gegensatz zu Smoke.Color änd
Code-Beispiele
local function recurseForFire(object)
-- Check if we found a Fire object that has no Smoke
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Create a smoke effect for this fire
local smoke = Instance.new("Smoke")
smoke.Color = Color3.new(0, 0, 0)
smoke.Opacity = 0.15
smoke.RiseVelocity = 4
smoke.Size = object.Size / 4
smoke.Parent = object.Parent
end
-- Continue search for Fire objects
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)
TimeScale
Ein Wert zwischen 0 und 1 steuert die Geschwindigkeit des Partikeleffekts. Bei 1 läuft es normalerweise, bei 0,5 läuft es halb so schnell und bei 0 läuft es ein.