ファイアー は、複数のプリメイドパーティクルエミットクラスのうちの 1 つです。他のパーティクルエミットオブジェクトと同様、ファイアーは BasePart と Attachment
ファイアパーティクルは、BasePart の中心から発生し、それらが親になります。パーティクルは、上向き(+Y)方向にエミットされますが、Fire.Heat は、下向き(-Y)方向にエミットすることが
Class.Fire.Enabled|Enabled がオフになっている
燃えるオブジェクトには、自所有で光を発しません。燃えるオブジェクトの周りにコーヒーエリアを作成するために、オレンジの PointLight を追加してください。これは、あなたの燃えるオブジェクトがもっと現実に見えるようにすることができます。
ファイアオブジェクトは、2つのエミッターで構成されています。 Size 、 Heat 、 Color および 1>
実際の炎とは異なり、Fire オブジェクトは自分で広がりません。ゲームでこの動作を発見する場合、それは Script によるものです。
コードサンプル
for _, child in pairs(workspace:GetChildren()) do
if child.Name == "Torch" and child:IsA("BasePart") then
local fire = Instance.new("Fire")
fire.Heat = 10
fire.Color = child.Color
fire.SecondaryColor = Color3.new(1, 1, 1) -- White
fire.Size = math.max(child.Size.X, child.Size.Z) -- Pick the larger of the two dimensions
fire.Parent = child
end
end
概要
プロパティ
メイン (外側) の炎の粒子の色を決定します。
炎の粒子が放出されるかどうかを決定します。
パーティクルが放出される速度を決めます。
セカンダリ (内側) の炎の粒子の色を決める。
炎の粒子のサイズを決める。
パーティクルエフェクトの速度を制御する値の間で 0-1 です。
プロパティ
Color
色プロパティは、Fireオブジェクトによって発射される大きなパーティクルの色を決定します。基本的に、それは炎の外側の色です。
一全般的に、よりクールな炎は火の外側にあります。そfore、外側の部分が赤またはオレンジ-イエローの場合、火はより現実的に見えます。炎が周りに明るく見える場合、PointLight を追加して
コードサンプル
for _, child in pairs(workspace:GetChildren()) do
if child.Name == "Torch" and child:IsA("BasePart") then
local fire = Instance.new("Fire")
fire.Heat = 10
fire.Color = child.Color
fire.SecondaryColor = Color3.new(1, 1, 1) -- White
fire.Size = math.max(child.Size.X, child.Size.Z) -- Pick the larger of the two dimensions
fire.Parent = child
end
end
Enabled
[Class.ParticleEmitter.Enabled] のように、オプションは、ParticleEmitter.Enabled のように、火炎パーティクルがエミットされるかどうかを決定します。すでにエミットされているパーティクルは、 Class.Fire
local Debris = game:GetService("Debris")
local part = script.Parent
function douseFlames(fire)
fire.Enabled = false -- No more new particles
Debris:AddItem(fire, 2) -- Remove the object after a delay (after existing particles have expired)
end
douseFlames(part.Fire)
コードサンプル
local part = script.Parent
local clickDetector = Instance.new("ClickDetector")
clickDetector.Parent = part
local fire = Instance.new("Fire")
fire.Parent = part
local light = Instance.new("PointLight")
light.Parent = part
local function onClick()
fire.Enabled = not fire.Enabled
light.Enabled = fire.Enabled
end
clickDetector.MouseClick:Connect(onClick)
Heat
熱プロパティは、Fire オブジェクトからパーティクルがどれくらい速く放出されるかを決めます。它は BasePart または Attachment
コードサンプル
for _, child in pairs(workspace:GetChildren()) do
if child.Name == "Torch" and child:IsA("BasePart") then
local fire = Instance.new("Fire")
fire.Heat = 10
fire.Color = child.Color
fire.SecondaryColor = Color3.new(1, 1, 1) -- White
fire.Size = math.max(child.Size.X, child.Size.Z) -- Pick the larger of the two dimensions
fire.Parent = child
end
end
LocalTransparencyModifier
SecondaryColor
SecondaryColor プロパティは、Fire。それは、花の内部の部分の色です。以下で、 Class.Fire.Color
コードサンプル
for _, child in pairs(workspace:GetChildren()) do
if child.Name == "Torch" and child:IsA("BasePart") then
local fire = Instance.new("Fire")
fire.Heat = 10
fire.Color = child.Color
fire.SecondaryColor = Color3.new(1, 1, 1) -- White
fire.Size = math.max(child.Size.X, child.Size.Z) -- Pick the larger of the two dimensions
fire.Parent = child
end
end
Size
このプロパティは、炎のパーティクルのサイズを決定します。2から30の範囲になければなりません。ParticleEmitter.Size とは、実際の炎のサイズが 1:1 に対応するスタッドではないため、サイズが小さくなります。
環境をより一貫性のあるようにするには、PointLight を、Fire オブジェクトの兄弟として追加してください。PointLight.Brightness と 2>Class.PointLight.Range2> を、このプロパティの比例により、より大きな炎が発生するように設
コードサンプル
for _, child in pairs(workspace:GetChildren()) do
if child.Name == "Torch" and child:IsA("BasePart") then
local fire = Instance.new("Fire")
fire.Heat = 10
fire.Color = child.Color
fire.SecondaryColor = Color3.new(1, 1, 1) -- White
fire.Size = math.max(child.Size.X, child.Size.Z) -- Pick the larger of the two dimensions
fire.Parent = child
end
end