Smoke
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
Duman, birkaç parçacık
Class.Smoke.Enabled kapalı olduğunda
Duman parçacıkları sadece BasePart 'nin merkezinden çıkarılır ve onların ebeveyni olur. Bir Smoke nesnesini bir Attachment ile bağlayarak parçacıkların başlangıç noktasını özelleştirebilirsiniz.
Kod Örnekleri
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)
Özet
Özellikler
Duman parçalarının rengini belirler.
Duman parçalarının emittiği belirleyin.
Opake duman parçalarının nasıl göründüğünü belirler.
Duman parçalarının hızını belirler.
Yeni emitselenen duman parçalarının boyutunu belirler.
Parçacık efektinin hızını kontrol eden 0-1 arasındaki değer.
Özellikler
Color
Renk öğesi, tüm parçacıkların renklerini belirleyen bir Smoke nesnedir (hem mevcut hem de gelecekteki parçacıklar). Bu, ParticleEmitter.Color ile aynıdır, ancak s
Kod Örnekleri
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
Etkin özellik, ParticleEmitter.Enabled gibi, duman parçacıklarının emitsinip emitsinip ettiğini belirler. İstemsiz olarak emitsiği duman parçacıkları, Smoke nesnelerinin
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)
Kod Örnekleri
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, duman parçacıklarının opaklığını belirler. Bu özellik [0, 1] aralığında olmalıdır. Bu özellik, bir parçanın BasePart.Transparency veya ParticleEmitter'in ParticleEmitter.Transparency ile kıyaslandığında bir değer olarak görünmezdir
Roblox'un Smoke parçacıklar için kullandığı dokunun bir kısmı açık, bu yüzden bu özelliği 1 olarak ayarlarsanız, renderlenmiş dumanın bir bakımı hala görünür olur.
Kod Örnekleri
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, ParticleEmitter.Speed ve Fire.Heat ile aynı davranır: itiş parçacıklarının hayat boyunu boyunca hızını belirler. Olmalı BasePart aralığında olmalıdır. Olumsuz değerler, parçacıkların ebeveyninin
Sis oluşturmak için bir Smoke efekti kullanırken, bu özelliği 0 olarak ayarlayın. Büyük duman efektleri için, yükselişi sakın (2 ila 8) yapın. Ateşler ve duman stapları için, daha yüksek değerler uygun olur.
Kod Örnekleri
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
Class.Smoke.Color özelliği, yeni emitselenen duman parçacıklarının boyutunu belirler. Smoke.Color öz
Kod Örnekleri
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
0-1 arasındaki bir değer parçacık etkisinin hızını kontrol eder. 1'de normal hızda çalışır, 0.5'te yarı hızda çalışır ve 0'da dondurur zamanı.