Fire
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Fire est l'une de plusieurs Classesde particules émettrices. Comme d'autres objets de particules émettrices, un Fire émet des particules lorsqu'il est parenté à un BasePart et à un Attachment et pendant que 0> Class.Fire.Enabled|Enabled0> .
Les particules émettent du centre de BasePart à leur parent. Les particules émettent vers le haut (+Y) direction; cependant, un négatif Fire.Heat peut être utilisé pour émettre dans la direction du bas (-Y). L'utilisation d'un Attachment en tant que parent permet la modification de
Lorsque Enabled est désactivé,
Les objets de feu ne diffèrent pas de la lumière posséder. Pour aider à créer un environnement cohérent autour d'un objet brûlant, essayez d'ajouter un PointLight avec un orange Color. Cela peut aider votre feu à sembler plus réaliste.
L'objet de feu consiste en deux émetteurs. Les deux d'entre eux sont affectés de manière différente par le Size , Heat , Color et
Contrairement aux flammes réelles, l'objet Fire ne se répand pas lui-même. Si vous remarquez ce comportement dans votre jeu, il se produit en raison d'un Class.Script.
Échantillons de code
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
Résumé
Propriétés
Détermine la couleur des particules de flamme primaire (extérieures).
Détermine si les particules de flamme sont émises.
Détermine la vitesse à laquelle les particules émettent.
Détermine la couleur des particules de flamme secondaires (intérieures).
Détermine la taille des particules de flamme.
Valeur entre 0-1 qui contrôle la vitesse de l'effet de particule.
Propriétés
Color
La propriété couleur détermine la couleur des particules plus grandes émises par un Fire objet. C'est essentiellement la couleur de la partie extérieure de la flamme.
En général, les flammes plus fraîches sont sur l'extérieur d'un lancer. Par conséquent, le feu a l'air plus réaliste si les parties extérieures sont rouges ou orange-jaune. Un feu qui est brillant partout n'a pas l'air très réaliste, alors évite de définir cette propriété sur jaune. Essayez d'ajouter un Class.
Échantillons de code
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
La propriété Activée, tout comme ParticleEmitter.Enabled, détermine si les particules de flamme sont émises. Toutes les particules déjà émises continueront à s'afficher jusqu'à ce que leur durée de vie expire. Cette propriété est utile pour garder les effets de feu prédéfinis jusqu'à ce qu'ils soient nécessaires
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)
Échantillons de code
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
La propriété Chaleur détermine à quelle vitesse les particules sont émises par l'objet Fire. Il est limité à la portée [-25, 25]. Les valeurs positives sont dans la direction supérieure (+Y) de l'objet parent Class.BasePart</
Échantillons de code
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
La propriété SecondaryColor détermine la couleur des particules plus petites émises par un objet Fire . C'est essentiellement la couleur de la partie intérieure de la flamme. ci-dessous, vous pouvez voir la couleur secondaire de la flamme est définie pour
Échantillons de code
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
Cette propriété détermine la taille des particules de flamme. Il doit être dans la tranche de 2 à 30. Contrairement à ParticleEmitter.Size, la taille réelle des flammes ne correspond pas à 1:1 avec la taille équivalente en studs ; il est légèrement plus petit.
Pour rendre votre environnement plus cohérent, essayez d'ajouter un PointLight en tant que frère jumeau à l'objet Fire. Définissez le PointLight.Brightness et le 1> Class.PointLight.Range1> proportionnel à cette propriété afin que plus grandes les flammes produisent plus de lumière.
Échantillons de code
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
TimeScale
Une valeur entre 0-1 contrôle la vitesse de l'effet de particule. À 1, il s'exécute à la vitesse normale, à 0,5, il s'exécute à la moitié de la vitesse et à 0, il gèle le temps.