Smoke
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Asap adalah salah satu dari
Ketika Smoke.Enabled diny
Partikel asap hanya ditransmisikan dari pusat BasePart ke mana mereka berasal. Menjadikan objek Asap sebagai orang tua untuk Attachment memungkinkan kustomisasi posisi awal partikel.
Contoh Kode
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)
Rangkuman
Properti
Mengukur warna partikel asap.
Mengukur apakah partikel asap menghasilkan.
Mengukur bagaimana partikel asap yang opake rendah.
Mengukur kecepatan partikel asap.
Mengukur ukuran partikel asap baru yang dipancarkan.
Nilai antara 0-1 yang mengontrol kecepatan efek partikel.
Properti
Color
Propriété Warna menentukan warna dari semua partikel yang dipancarkan oleh objek Smoke (baik partikel yang ada maupun masa depan). Berperilaku dengan cara yang sama dengan ParticleEmitter.Color
Contoh Kode
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
Properti yang Diaktifkan, seperti ParticleEmitter.Enabled, menentukan apakah partikel asap dibelokkan. Setiap partikel yang sudah dibelokkan akan terus rendah sampai batas waktu mereka berakhir. Properti ini berguna untuk menjaga efek as
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)
Contoh Kode
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 menentukan opaquenya partikel asap. Ini harus berada dalam rentang [0, 1]. Propinsi ini bekerja secara terbalik dalam perbandingan dengan Class.BasePart.Transparency atau ParticleEmitter Class.ParticleEmitter.Transparency : nilai 0 benar-benar tidak terlihat, 1 benar-benar terlihat.
Textur yang digunakan oleh Roblox untuk Smoke partikel adalah setengah transparan, jadi menetapkan propinsi ini ke 1 masih menghasilkan transparansi dalam merendahkan asap.
Contoh Kode
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 bersikap mirip dengan ParticleEmitter.Speed dan Fire.Heat : itu menentukan seberapa cepat partikel asap bergerak selama hidup mereka. Ini harus berada dalam rentang [-25, 25].Nilai negatif akan menyebabkan partikel untuk bermoving di arah bawah (-Y) dari parent BasePart .
Saat menggunakan efek Smoke untuk menciptakan kabut, tetapkan nilai ini ke 0. Untuk efek asap besar, buat tingkatan percikan (2 hingga 8). Untuk merokok dan stapel asap, nilai yang lebih tinggi disarankan.
Contoh Kode
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
Propiedad Smoke menentukan ukuran partikel asap baru yang dipancarkan. Tidak seperti Smoke.Color, propiedad ini tid
Contoh Kode
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
Nilai antara 0-1 yang mengontrol kecepatan efek partikel. Pada 1 dijalankan dengan kecepatan normal, pada 0,5 dijalankan dengan kecepatan setengah, dan pada 0 dijeda waktu.