Smoke

Tampilkan yang Tidak Digunakan Lagi

*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 beberapa Kelasemisi partikel.Seperti pemancar partikel lain dari jenisnya, objek Asap memancarkan partikel saat diberi keturunan ke BasePart (seperti Part ) atau Attachment di dalam seperti BasePart .Dibandingkan dengan kelas ParticleEmitter , Asap kurang memiliki banyak properti kustomisasi berbeda dan metode khusus, seperti ParticleEmitter.Lifetime atau ParticleEmitter:Emit().Berguna untuk membuat efek khusus cepat dalam sekejap; untuk pekerjaan yang lebih terperinci, lebih baik menggunakan ParticleEmitter alih.

Ketika Smoke.Enabled dimatikan, partikel yang dipancarkan oleh objek ini akan terus ditampilkan sampai masa hidupnya berakhir.Ketika objek Asap Instance.Parent diatur ke nil (dan/atau Instance:Destroy() diedit), semua partikel akan langsung menghilang.Jika efek ini tidak diinginkan, coba sembunyikan objek orang tua di posisi jauh, lalu hapus Asap setelah beberapa detik menggunakan Debris untuk memberi kesempatan kepada partikel terakhir untuk kedaluwarsa.Objek ini tidak memiliki metode ParticleEmitter:Clear() , tetapi mungkin untuk mengatur Instance.Parent ke nil dan kembali ke objek yang sama persis untuk efek yang sama.

Partikel asap hanya dipancarkan dari pusat BasePart ke mana mereka berasal.Membesarkan objek Asap ke Attachment sebagai gantinya memungkinkan kustomisasi posisi awal partikel.

Contoh Kode

Contoh kode ini menambahkan objek Smoke ke setiap objek Fire di dalam Workspace. Ini dilakukan dengan menggunakan pencarian recursif.

Tambahkan Asap ke Semua Api

local function recurseForFire(object)
-- Periksa apakah kami menemukan objek Api yang tidak memiliki Asap
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Buat efek asap untuk api ini
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
-- Lanjutkan pencarian objek Api
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

Rangkuman

Properti

  • Baca Paralel

    Menentukan warna partikel asap.

  • Baca Paralel

    Menentukan apakah partikel asap dipancarkan.

  • Tersembunyi
    Tidak Direplikasi
    Baca Paralel
  • Tidak Direplikasi
    Baca Paralel

    Menentukan bagaimana partikel asap yang tidak transpar terrender.

  • Tidak Direplikasi
    Baca Paralel

    Menentukan kecepatan partikel asap.

  • Tidak Direplikasi
    Baca Paralel

    Menentukan ukuran partikel asap baru yang dikeluarkan.

  • Baca Paralel

    Nilai antara 0-1 yang mengontrol kecepatan efek partikel.

Properti

Color

Baca Paralel

Contoh Kode

Tambahkan Asap ke Semua Api

local function recurseForFire(object)
-- Periksa apakah kami menemukan objek Api yang tidak memiliki Asap
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Buat efek asap untuk api ini
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
-- Lanjutkan pencarian objek Api
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

Enabled

Baca Paralel

Contoh Kode

Tambahkan Asap ke Semua Api

local function recurseForFire(object)
-- Periksa apakah kami menemukan objek Api yang tidak memiliki Asap
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Buat efek asap untuk api ini
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
-- Lanjutkan pencarian objek Api
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

LocalTransparencyModifier

Tersembunyi
Tidak Direplikasi
Baca Paralel

Opacity

Tidak Direplikasi
Baca Paralel

Contoh Kode

Tambahkan Asap ke Semua Api

local function recurseForFire(object)
-- Periksa apakah kami menemukan objek Api yang tidak memiliki Asap
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Buat efek asap untuk api ini
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
-- Lanjutkan pencarian objek Api
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

RiseVelocity

Tidak Direplikasi
Baca Paralel

Contoh Kode

Tambahkan Asap ke Semua Api

local function recurseForFire(object)
-- Periksa apakah kami menemukan objek Api yang tidak memiliki Asap
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Buat efek asap untuk api ini
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
-- Lanjutkan pencarian objek Api
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

Size

Tidak Direplikasi
Baca Paralel

Contoh Kode

Tambahkan Asap ke Semua Api

local function recurseForFire(object)
-- Periksa apakah kami menemukan objek Api yang tidak memiliki Asap
if object:IsA("Fire") and not object.Parent:FindFirstChildOfClass("Smoke") then
-- Buat efek asap untuk api ini
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
-- Lanjutkan pencarian objek Api
for _, child in pairs(object:GetChildren()) do
recurseForFire(child)
end
end
recurseForFire(workspace)

TimeScale

Baca Paralel

Metode

Acara