Smoke
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
Dym jest jedną z kilku klas emitują
Gdy Smoke.Enabled jest wyłączony,
Cząsteczki dymu są emituowane tylko z centrum BasePart , do którego są one powiązane. Utworzenie powiązania dla obiektu Dymu na Attachment pozwala na dostosowanie pozycji początkującej dla cząsteczek.
Przykłady kodu
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)
Podsumowanie
Właściwości
Określa kolor cząsteczek dymu.
Określa, czy emitują one cząsteczki dymu.
Określa, jak renderują się cząsteczki dymu.
Określa prędkość cząsteczek dymu.
Określa rozmiar nowo emituowanych cząsteczek dymu.
Wartość pomiędzy 0-1, która kontroluje prędkość efektu cząsteczek.
Właściwości
Color
Właściwość Kolor określa kolor wszystkich cząsteczek emitowanych przez obiekt Smoke (zarówno istniejące, jak i przyszłe cząsteczki). Zachowuje się podobnie do ParticleEmitter.Color, z wyjąt
Przykłady kodu
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
Właściwość Włączone, podobnie jak ParticleEmitter.Enabled, określa, czy emituje się cząsteczki dymu. Wszystkie cząsteczki dymu, które są już emituowane, nadal będą się renderować do czasu wygaszenia ich życia. Ta właściwo
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)
Przykłady kodu
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
Nieprzezroczystość określa nieprzezroczystość cząsteczek dymu. Musi być w zakresie [0, 1]. Ta właściwość działa odwrotnie w porównaniu do części BasePart.Transparency lub ParticleEmitter'a ParticleEmitter.Transparency : wartość 0 jest całkowicie niewidoczna, 1 jest
Textura, którą Roblox używa do Smoke cząsteczek jest częściowo przejrzysta, więc ustawienie tej właściwości na 1 nadal zapewnia przejrzystość w renderowanym dymie.
Przykłady kodu
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 zachowuje się podobnie do ParticleEmitter.Speed i Fire.Heat : określa, jak szybko ruchają cząsteczki dymu podczas ich życia. Musi być w zakresie [-25, 25]. Negaty wartości powodują, że cząsteczki emitują się w kierunku dolnym (-Y) w stronę BasePart.
Podczas używania efektu Smoke do tworzenia mgły ustaw ten właściwość na 0. Dla dużych efektów mgły uczynić wzrost subtelny (2 do 8). Dla kominów i stosów dymnych wysokie wartości są odpowiednie.
Przykłady kodu
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
Właściwość rozmiaru Smoke określa rozmiar nowo emituowanych cząsteczek dymu. W przeciwieństwie do Class.Smoke.
Przykłady kodu
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
Wartość pomiędzy 0-1 kontroluje prędkość efektu cząsteczek. W 1 biegu to działa w normalnym tempie, w 0,5 biegu to działa w halnej prędkości i w 0 to zamraża czas.