ParticleEmitter
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Ein PartikelEmitter ist ein spezielles Objekt, das benutzerdefinierte 2D-Partikel in die Welt emittiert.Um Partikel zu emittieren und zu rendern, muss es einem BasePart oder einem Attachment innerhalb eines solchen Teils zugewiesen werden.Wenn es einem BasePart zugewiesen wird, spawnen Partikel zufällig innerhalb der Grenzbox des Teils oder der Form ; wenn es einem Attachment zugewiesen wird, spawnen Partikel aus der Position des Anhangs.
Partikel emittieren automatisch, wenn der Emitter Enabled mit einem nicht-Null-Rate ist, oder manuell, wenn die Emit Methode aufgerufen wird.Mit einem nicht Null Speed werden Partikel in Bewegung gesetzt, nach außen und/oder nach innen, je nach der EigenschaftenShapeInOut.
Standardmäßig stoßen Partikel auf die Kamera, aber der Orientation kann modifiziert werden, um stattdessen die Partikelgeschwindigkeit zu respektieren.
Während des Lifetime der Partikel können sie das Aussehen entsprechend den Color und Size ändern.Ihre Bewegung kann sich im Laufe der Zeit nach den Eigenschaften Drag und Acceleration ändern, und sie können sich auch bewegen, wenn ihre Eltern sich bewegen, wenn sie LockedToPart oder eine nicht Null VelocityInheritance haben.
Um mehr über die Erstellung und Anpassung von Partikelstrahlern zu erfahren, siehe Partikelstrahler.
Code-Beispiele
This rather lengthy code sample shows how every property of a ParticleEmitter can be set, including NumberRange, NumberSequence and ColorSequence properties. Below is how the ParticleEmitter should look after every property is set. Try playing around with the different properties to customize how the effect looks!
local emitter = Instance.new("ParticleEmitter")
-- Number of particles = Rate * Lifetime
emitter.Rate = 5 -- Particles per second
emitter.Lifetime = NumberRange.new(1, 1) -- How long the particles should be alive (min, max)
emitter.Enabled = true
-- Visual properties
emitter.Texture = "rbxassetid://1266170131" -- A transparent image of a white ring
-- For Color, build a ColorSequence using ColorSequenceKeypoint
local colorKeypoints = {
-- API: ColorSequenceKeypoint.new(time, color)
ColorSequenceKeypoint.new(0, Color3.new(1, 1, 1)), -- At t=0, White
ColorSequenceKeypoint.new(0.5, Color3.new(1, 0.5, 0)), -- At t=.5, Orange
ColorSequenceKeypoint.new(1, Color3.new(1, 0, 0)), -- At t=1, Red
}
emitter.Color = ColorSequence.new(colorKeypoints)
local numberKeypoints = {
-- API: NumberSequenceKeypoint.new(time, size, envelop)
NumberSequenceKeypoint.new(0, 1), -- At t=0, fully transparent
NumberSequenceKeypoint.new(0.1, 0), -- At t=.1, fully opaque
NumberSequenceKeypoint.new(0.5, 0.25), -- At t=.5, mostly opaque
NumberSequenceKeypoint.new(1, 1), -- At t=1, fully transparent
}
emitter.Transparency = NumberSequence.new(numberKeypoints)
emitter.LightEmission = 1 -- When particles overlap, multiply their color to be brighter
emitter.LightInfluence = 0 -- Don't be affected by world lighting
-- Speed properties
emitter.EmissionDirection = Enum.NormalId.Front -- Emit forwards
emitter.Speed = NumberRange.new(0, 0) -- Speed of zero
emitter.Drag = 0 -- Apply no drag to particle motion
emitter.VelocitySpread = NumberRange.new(0, 0)
emitter.VelocityInheritance = 0 -- Don't inherit parent velocity
emitter.Acceleration = Vector3.new(0, 0, 0)
emitter.LockedToPart = false -- Don't lock the particles to the parent
emitter.SpreadAngle = Vector2.new(0, 0) -- No spread angle on either axis
-- Simulation properties
local numberKeypoints2 = {
NumberSequenceKeypoint.new(0, 0), -- At t=0, size of 0
NumberSequenceKeypoint.new(1, 10), -- At t=1, size of 10
}
emitter.Size = NumberSequence.new(numberKeypoints2)
emitter.ZOffset = -1 -- Render slightly behind the actual position
emitter.Rotation = NumberRange.new(0, 360) -- Start at random rotation
emitter.RotSpeed = NumberRange.new(0) -- Do not rotate during simulation
-- Create an attachment so particles emit from the exact same spot (concentric rings)
local attachment = Instance.new("Attachment")
attachment.Position = Vector3.new(0, 5, 0) -- Move the attachment upwards a little
attachment.Parent = script.Parent
emitter.Parent = attachment
Zusammenfassung
Eigenschaften
Bestimmt die globale Achsbeschleunigung aller aktiven Partikel, gemessen in Stollen pro Sekunde quadriert.
Skaliert das Licht, das vom Emitter emittiert wird, wenn ParticleEmitter.LightInfluence 0 ist.
Bestimmt die Farbe aller aktiven Partikel über ihre individuellen Lebenszeiten.
Bestimmt die Rate, mit der Partikel die Hälfte ihrer Geschwindigkeit durch exponentielle Verfall verlieren.
Bestimmt das Gesicht des Objekts, von dem Partikel ausgehen.
Bestimmt, ob Partikel vom Emitter emittiert werden.
Bestimmt, wie schnell die Flipbook-Texturen in Frames pro Sekunde animiert werden.
Die Fehlermeldung, die angezeigt wird, wenn die Texture unvereinbar für ein Flipbook ist.
Bestimmt die Anordnung der Flipbook-Texturen. Muss None, Grid2x2, Grid4x4 oder Grid8x8 sein.
Bestimmt die Art der Animationen. Muss Loop, OneShot, PingPong oder Zufall sein.
Bestimmt, ob die Animation bei einem zufälligen Frame beginnt, der pro Partikel gewählt wird, anstatt immer bei Frame-Null zu beginnen.
Legt eine zufällige Reihe von Altersgrenzen für neu emittierte Partikel fest.
Bestimmt, wie viel die Farben der Partikel mit den Farben hinter ihnen gemischt werden.
Bestimmt, wie stark Partikel durch das Umgebungslicht beeinflusst werden.
Bestimmt, ob sich die Partikel steif mit dem Teil bewegen, von dem sie emittiert werden.
Gibt an, wie Partikel ausgerichtet werden.
Bestimmt die Anzahl der emittierten Partikel pro Sekunde.
Bestimmt die Reichweite der angulären Geschwindigkeiten der emittierten Partikel, gemessen in Grad pro Sekunde.
Bestimmt die Reichweite der Rotationen in Grad für neu emittierte Partikel.
Legt die Form des Senders auf eine Auswahlbox, Kugel, Zylinder oder Scheibe fest.
Legt fest, ob Partikel nur nach außen, nur nach innen oder in beide Richtungen emittieren.
Beeinflusst Partikelemission aus Zylinder, Disc, Kugel und Boxformen.
Setzt die Partikelemission entweder auf volumetrische oder nur auf Oberflächenemission.
Bestimmt die Weltgröße über die Lebensdauer einzelner Partikel.
Bestimmt eine zufällige Geschwindigkeitsreichweite (von minimal bis maximal), zu der neue Partikel emittieren, in Stück pro Sekunde gemessen.
Bestimmt die Winkel, zu denen Partikel zufällig emittiert werden können, in Grad gemessen.
Ermöglicht eine nicht-uniforme Skalierung von Partikeln, die über ihre Lebensdauer von der Kurve gesteuert werden.
Bestimmt das Bild, das auf Partikeln gerendert wird.
Wert zwischen 0 und 1, der die Geschwindigkeit des Partikeleffekts steuert.
Bestimmt die Transparenz von Partikeln über ihre individuellen Lebenszeiten.
Bestimmt, wie viel der Geschwindigkeit des übergeordnetes Teilvon den Partikeln geerbt wird, wenn sie emittiert werden.
Ob emittierte Partikel dem Vektorkraftfolgen.
Bestimmt die rückwärts gerichtete Renderposition von Partikeln; wird verwendet, um zu kontrollieren, welche Partikel oben/unten gerendert werden.
Methoden
Entfernt alle Partikel, die emittiert wurden.
Sendet eine bestimmte Anzahl von Partikeln aus.
Eigenschaften
Acceleration
Die Eigenschaft Beschleunigung bestimmt, wie sich das Speed von Partikeln während ihrer Lebensdauer ändert.Es wird mit einem Vector3 definiert, um die Beschleunigung auf den globalen X / Y / Z -Achsen zu bestimmen und wird in Stollen pro Sekunde quadriert gemessen.Wenn sich diese Eigenschaft ändert, wirkt sich diese Eigenschaft auf alle Partikel aus, die vom Emitter emittiert werden, sowohl aktuelle als auch zukünftige.
Beschleunigung wird Partikel verlangsamen, wenn die Vektorpunkte im entgegengesetzten EmissionDirection in dem sie emittiert werden, sich nähern. Ansonsten wird es sie beschleunigen.
Brightness
Skaliert das Licht, das vom Emitter emittiert wird, wenn ParticleEmitter.LightInfluence 0 ist.
Color
Die Farbe -Eigenschaft legt die Farbe aller aktiven Partikel über ihre individuellen Lebenszeiten fest.Die Farbe gilt für die Texture beim Rendern und verwendet die Textur alpha zusammen mit dem Emitter's Transparency.Wenn einEmitter einen Wert LightEmission hat, der größer als 0 ist, erscheinen dunklere Farben Partikel transparenter.
Das Ändern dieser Eigenschaft wirkt sich auf alle Partikel aus, die vom Emitter emittiert werden, sowohl aktuelle als auch zukünftige.
Wenn diese Eigenschaft einen Gradienten verwendet, wird die gegenwärtige Farbe einer Partikel durch lineare Interpolation auf der Sequenz bestimmt, die mit dem Alter des Partikels und seiner gesamten Lebensdauer verwendet wird.Wenn zum Beispiel ein Partikel vor 2 Sekunden erschienen ist und eine Lebensdauer von 4 Sekunden hat, wird die Farbe sein, was 50% des Weges durch die ColorSequence durchläuft.
Drag
Die Eigenschaft Ziehen bestimmt die Rate in Sekunden, mit der einzelne Partikel durch exponentielle Verfall verlieren die Hälfte ihrer Geschwindigkeit.Ziehen wird angewendet, indem die erwartete Geschwindigkeit von Speed und jede Geschwindigkeit, die vom Elternteil erbt, von VelocityInheritance skaliert wird.Die Einstellung dieser Eigenschaft auf einen negativen Wert wird die Geschwindigkeit der Partikel exponentiell steigen lassen.
EmissionDirection
Die Eigenschaft Emissionsrichtung bestimmt das Gesicht (Enum.NormalId ) des übergeordneten Objekts, von dem Partikel ausgehen.Ein negatives Speed bedeutet, dass Partikel in die entgegengesetzte Richtung emittieren.SpreadAngle variiert die Emissionsrichtung weiter.
Wenn du ein ParticleEmitter zu einem Attachment, das eine Richtung hat, hinzufügst, kannst du das Anhang selbst drehen (Attachment.Orientation), anstatt diese Eigenschaftenzu verwenden.
Enabled
Die Aktivierte Eigenschaft bestimmt, ob Partikel vomEmitter emittiert werden.Diese Einstellung auf false hält weitere Partikel vom Spawnen ab, aber alle vorhandenen Partikel bleiben aktiv, bis sie ablaufen.Diese Eigenschaft ist nützlich, wenn du einen vordefinierten Partikeleffekt hast, den du deaktivieren möchtest, bis du ihn zum Emittieren von Partikeln benötigst.
Wenn du alle Partikel von einem deaktivierten Emitter löschen möchtest, rufe Clear() an.Dann rufe, wenn gewünscht, Emit() auf den Emitter, um Partikel zu emittieren und zu rendern.
FlipbookFramerate
Die Eigenschaft FlipbookFramerate bestimmt, wie schnell die Flipbook-Texture in Bildern pro Sekunde animiert wird.Wie Lifetime kannst du eine Mindest- und Höchstreichweite festlegen, um die Framerate des Flipbooks mit einer maximalen Anzahl von 30 Frames pro Sekunde zu randomisieren.
FlipbookIncompatible
Die Fehlermeldung, die angezeigt wird, wenn die Texture unvereinbar für ein Flipbook ist.Die Flipbook-Texturen müssen über Pixelgrößen von 8×8, 16×16, 32×32, 64×64, 128×128, 256×256, 512×512 oder 1024×1024 verfügen.
FlipbookLayout
Die Eigenschaft FlipbookLayout bestimmt das Layout der Textur. Es kann jedes Wert der Enum.ParticleFlipbookLayout Enumeration sein:
- Keine – Deaktivieren Sie Flipbook-Funktionen und verwenden Sie die Textur als einzelne statische Textur über die Lebensdauer der Partikel.
- Grid2x2 – 2×2-Frames für eine Animationen.
- Grid4x4 – 4×4-Frames für eine Animationen.
- Grid8x8 – 8×8-Frames für eine Animationen.
FlipbookMode
Die Eigenschaft FlipbookMode bestimmt die Art der Animationen. Es kann jedes Wert der Enum.ParticleFlipbookMode sein:
- Schleife – Spielen Sie kontinuierlich durch alle Frames, beginnend mit dem ersten Frame nach dem Spielen des letzten.
- OneShot – Spielen Sie die Animation nur einmal während der Lebensdauer der Partikel durch.Mit dieser Einstellung gilt die -Eigenschaft nicht; stattdessen wird die Framerate durch die Division der Partikel durch die Anzahl der Frames in der Animation bestimmt. OneShot Animationen sind nützlich für klare nicht wiederholende Animationen, wie eine Explosion, die einen Rauchstrahl erzeugt und dann verschwindet.
- PingPong – Spielen Sie von der ersten bis zur letzten Frame, dann in umgekehrter Reihenfolge von der letzten bis zur ersten, wiederholen Sie im Laufe der Lifetime der Partikel.
- Zufällig – Spiele die Frames in einer zufälligen Reihenfolge, mischt/kombiniert von einem Frame zum anderen.Dies kann nützlich sein für organische Partikeltexturen bei niedrigen Frameraten, wie Sterne, die langsam zwischen subtil unterschiedlichen Formen schweben.
FlipbookStartRandom
Die Eigenschaft FlipbookStartRandom bestimmt, ob jede Partikel bei einem zufälligen Frame der Animation beginnt, anstatt immer am ersten Frame zu beginnen.Ein Anwendungsfall besteht darin, diese Eigenschaft zu aktivieren und auch FlipbookFramerate auf Null zu setzen, wodurch jede emittierte Partikel eine statische Rahmenstruktur aus der Flipbook-Texture ausgewählt wird, die zufällig gewählt wird.
Lifetime
Die Eigenschaft Lebensdauer definiert das maximale und minimale Alter für neu emittierte Partikel.Lebenszeiten werden auf der Grundlage von jedem Partikel gespeichert, so dass, wenn dieser Wert geändert wird, bestehende Partikel aktiv bleiben, bis ihre zufällig gewählte Lebensdauer endet.Eine Lebensdauer von 0 verhindert, dass Partikel überhaupt emittieren.
LightEmission
Die Eigenschaft LightEmission bestimmt die Mischung der Texture Farben mit den Farben hinter ihnen.Ein Wert von 0 verwendet den normalen Mischmodus, während ein Wert von 1 additiven Mischmodus verwendet.Wenn sich diese Eigenschaft ändert, wirkt sich diese Eigenschaft sofort auf alle Partikel aus, die vom Emittenten besessen werden, sowohl aktuelle als auch zukünftige.
Diese Eigenschaft sollte nicht mit LightInfluence verwechselt werden, die festlegt, wie sich Partikel durch Umgebungslicht beeinflusst werden.
Diese Eigenschaft verursacht nicht , dass Partikel die Umgebung um sie herum beleuchten. Um das zu erreichen, erwägen Sie die Verwendung eines PointLight.
LightInfluence
Die Eigenschaft Lichtbeeinflussung bestimmt, wie viel Umgebungslicht die Farbe einzelner Partikel beeinflusst, wenn sie rendern.Es muss sich in der Reichweite von 0–1 befinden; das Verhalten von Werten außerhalb dieser Reichweite ist nicht definiert.Bei 0 werden Partikel von Licht überhaupt nicht beeinflusst (sie behalten die volle Helligkeit); bei 1 werden Partikel vollständig von Licht beeinflusst (in voller Dunkelheit werden Partikel schwarz sein).
Standardmäßig ist dieser Wert 1, wenn er mit Studio-Tools eingefügt wird. Wenn er mit Instance.new() eingefügt wird, beträgt er 0.
LocalTransparencyModifier
LockedToPart
Die Eigenschaft LockedToPart bestimmt, ob Partikel "am Emissionsquelle kleben" (die Attachment oder BasePart, an die der ParticleEmitter angegliedert ist).Wenn true , bewegen sich aktive Partikel in Schrittschaltung, wenn sich das zugeordnete Objekt bewegt.
Alternativ kannst du die VelocityInheritance-Eigenschaft mit einem Wert von 1 verwenden, der für einige Effekte geeigneter sein kann.
Orientation
Die Eigenschaft Orientierung bestimmt, welchen Orientierungsmodus man für die Partikelgeometrie eines Senders verwenden soll.
<td>Partikelverhalten</td></tr></thead><tbody><tr><td><b>Kamera gegenüberstehend</b></td><td>Standard-Kamera-Außenwerbetafel quad; Standardverhalten.</td></tr><tr><td><b>Kamera auf der Welt nach oben gerichtet</b></td><td>Gegenüber der Kamera, aber nur auf der vertikalen aufwärtswelt <b>Y</b>-Achse drehen.</td></tr><tr><td><b>GeschwindigkeitParallel</b></td><td>Ausgerichtet parallel zu ihrer Bewegungsrichtung.</td></tr><tr><td><b>GeschwindigkeitPerpendikular</b></td><td>Ausgerichtet parallel zu ihrer Richtungsbewegung.</td></tr></tbody>
Orientierung |
---|
Rate
Die Eigenschaft Rate bestimmt, wie viele Partikel pro Sekunde emittiert werden, während der Emitter Enabled ist.Es ist das Gegenteil der Frequenz, d. h. eine Rate von 5 sendet alle 0,2 Sekunden eine Partikel aus.Wenn es geändert wird, hat diese Eigenschaft keine Auswirkung auf aktive Partikel.
RotSpeed
Die Eigenschaft RotSpeed bestimmt eine zufällige Reihe von anglektrischen Geschwindigkeiten für neu emittierte Partikel, gemessen in Grad pro Sekunde.Bei der Emission wird eine zufällige angulare Geschwindigkeit gewählt, so wirkt sich eine Änderung dieser Eigenschaft nicht auf aktive Partikel aus.Diese Eigenschaften, zusammen mit Rotation, wirkt sich auf den Winkel des gerenderten Partikelbilds aus.
Partikel mit sehr hohen Winkelgeschwindigkeiten können sich langsamer drehen oder Allenicht drehen, da der Winkel der Rotation mit der Softwarerendegeschwindigkeit synchronisiert wird.Wenn zum Beispiel Partikel jeden Frame genau mit 360 Grad drehen, wird es keine sichtbare Änderung in der Rotation geben.
Rotation
Die Eigenschaft Drehung bestimmt die Reichweite der Rotationen in Grad für neu emittierte Partikel, gemessen in Grad.Positive Werte sind in die richtige Richtung.Diese Eigenschaft wird in der Regel auf [0, 360] festgelegt, um eine völlig zufällige Rotation für neue Partikel zu gewährleisten.RotSpeed beeinflusst auch die Rotation einer Partikel während seiner Lebensdauer.
Änderungen an diesem Wert betreffen nur neue Partikel; bestehende Partikel bewahren die Rotation bei, bei der sie ursprünglich emittiert wurden.
Die Form -Eigenschaft legt die Form des Senders entweder auf eine Auswahlbox, Kugel, Zylinder oder Scheibe fest.Nachdem du eine Auswahl getroffen hast, kannst du die Eigenschaften ShapeStyle, ShapeInOut und ShapePartial anpassen, um die Partikelausstrahlung weiter anzupassen.Für visuelle Beispiele siehe hier .
ShapeInOut
Legt fest, ob Partikel nur nach außen, nur nach innen oder in beide Richtungen emittieren. Für visuelle Beispiele siehe hier .
ShapePartial
Abhängig vom Wert Shape führt diese Eigenschaft eine andere Actionaus:
Für Zylinder gibt es die obere Radiusproportion an.Ein Wert von 0 bedeutet, dass die Spitze des Zylinders einen Nullradius hat und somit ein Kegel ist.Ein Wert von 1 bedeutet, dass der Zylinder keine Deformation hat.
Für Discs gibt es die innere Radiusproportion an.Ein Wert von 0 bedeutet, dass die Scheibe vollständig geschlossen ist (Kreis/Ellipse), während ein Wert von 1 bedeutet, dass Emission nur auf dem äußersten Rand der Scheibe auftreten kann.Werte zwischen 0 und 1 senden von einem Ring mit einer bestimmten Dicke aus.
Für Kugeln gibt es an, den halbkugeligen Winkel an, über den Partikel emittieren.Ein Wert von 1 bedeutet, dass Partikel aus der gesamten Kugel emittiert werden; ein Wert von 0,5 bedeutet, dass Partikel aus einem Halbdom emittiert werden; ein Wert von 0 bedeutet, dass Partikel nur aus einem einzigen Punkt am Nordpol emittiert werden.
Für visuelle Beispiele siehe hier.
ShapeStyle
Setzt die Partikelemission entweder auf volumetrische oder nur auf Oberflächenemission. Für visuelle Beispiele siehe hier .
Size
Die Größe -Eigenschaft legt die Weltgröße aller aktiven Partikel über ihre individuellen Lebenszeiten fest.Diese Eigenschaft repräsentiert die Dimensionen des Quadrats Texture für jede Partikel.Es ist ein NumberSequence, das ähnlich wie Transparency funktioniert.
Die aktuelle Größe eines Partikels wird durch lineare Interpolation an dieser Sequenz bestimmt, indem der Alter des Partikels und seine gesamte Lebensdauer verwendet werden.Wenn zum Beispiel ein Partikel vor 2 Sekunden erschienen ist und eine Lebensdauer von 4 Sekunden hat, wird die Größe sein, was 50% des Weges durch die NumberSequence durchläuft.Für jede NumberSequenceKeypoint mit einem nicht- Null-Umschriftenwert wird ein zufälliger Wert in der Umschriftenbereich für jeden Schlüsselpunkt für jede Partikel gewählt, wenn sie emittiert wird.
Speed
Die Eigenschaft Geschwindigkeit bestimmt einen zufälligen Bereich von Geschwindigkeiten (von minimal bis maximal) bei dem neue Partikel emittieren, gemessen in Stück pro Sekunde.Die Geschwindigkeit jeder Partikel wird bei der Emission gewählt und gilt im EmissionDirection .Negative Werte verursachen, dass Partikel in umgekehrter Richtung reisen.
Beachten Sie, dass sich das Ändern von Speed nicht auf aktive Partikel auswirkt und sie ihre bereits vorhandene Geschwindigkeit behalten.Jedoch können Acceleration , Drag und VelocityInheritance verwendet werden, um die Geschwindigkeit aktiver Partikel über ihre Lebensdauer zu beeinflussen.
SpreadAngle
Die Eigenschaft Streuungswinkel bestimmt die zufälligen Winkel, unter denen ein Partikel emittiert werden kann.Zum Beispiel, wenn das EmissionDirection ist oben (+ Y ), beschreibt dies Vector2 die Größe der zufälligen Winkelverteilung auf den X / Z -Achsen, in Grad.
Die Einstellung einer Achse auf 360 verursacht, dass Partikel in alle Richtung in einem Kreis emittiert werden.Die Einstellung beider auf 360 verursacht, dass Partikel in alle Richtungen in einer Kugel emittiert werden.
Squash
Ermöglicht eine nicht-uniforme Skalierung von Partikeln, die über ihre Lebensdauer von der Kurve gesteuert werden.Werte größer als 0 verursachen, dass sich Partikel sowohl horizontal verkleinern als auch vertikal wachsen, während Werte unter 0 Partikel sowohl horizontal wachsen als auch vertikal schrumpfen lassen.
Texture
Die Textur -Eigenschaft bestimmt die auf Partikeln gerendete Bildqualität.Dieses Bild wird von Color , Transparency , LightInfluence und LightEmission beeinflusst.Texturen mit transparenten Hintergründen funktionieren am besten für Partikel.
TimeScale
Ein Wert zwischen 0 und 1, der die Geschwindigkeit des Partikeleffekts steuert.Bei 1 läuft es mit normaler Geschwindigkeit; bei 0.5 läuft es mit halber Geschwindigkeit; bei 0 friert es in der Zeit ein.
Transparency
Die Eigenschaft Transparenz bestimmt die Transparenz aller aktiven Partikel über ihre individuellen Lebenszeiten.Es funktioniert ähnlich wie Size in der Art, wie es Partikel im Laufe der Zeit beeinflusst.In Bezug auf die Rendering, ist ein Wert von 0 vollständig sichtbar (opak) und ein Wert von 1 vollständig unsichtbar (nicht gerendert Alle).
Die gegenwärtige Transparenz eines Partikels wird durch lineare Interpolation an dieser Sequenz bestimmt, indem der Alter des Partikels und seine gesamte Lebensdauer verwendet werden.Wenn zum Beispiel ein Partikel vor 2 Sekunden erschienen ist und eine Lebensdauer von 4 Sekunden hat, wird die Transparenz sein, was 50% des Weges durch die NumberSequence durchläuft.Für jede NumberSequenceKeypoint mit einem nicht- Null-Umschriftenwert wird ein zufälliger Wert in der Umschriftenbereich für jeden Schlüsselpunkt für jede Partikel gewählt, wenn sie emittiert wird.
VelocityInheritance
Die Eigenschaft VelocityInheritance bestimmt, wie viel des Elternteils Velocity von den Partikeln geerbt wird, wenn sie emittiert werden.Ein Wert von 0 bedeutet, dass keine Geschwindigkeit geerbt wird, während ein Wert von 1 bedeutet, dass die Partikel die gleiche Geschwindigkeit wie der Eltern BasePart hat.
Wenn in Kombination mit Drag verwendet, kann ein PartikelEmitter erscheinen, der Partikel von einer bewegenden Komponente "abwirft".
WindAffectsDrag
Wenn true, folgen emittierte Partikel dem Workspace.GlobalWind Vektorkraft. Gilt nur, wenn die Drag -Eigenschaft größer als 0 ist.
ZOffset
Die ZOffset -Eigenschaft bestimmt die rückwärts gerichtete Renderposition von Partikeln, in Studs, ohne ihre Größe auf dem Bildschirm zu ändern.Wenn diese Eigenschaft geändert wird, wirkt sie sich auf sowohl aktuelle als auch zukünftige Partikel aus.Beachten Sie, dass diese Eigenschaft Bruchwerte akzeptiert; es ist nicht wie GuiObject.ZIndex (eine ganzzahlig).
Positive Werte bringen Partikel näher an die Kamera und negative Werte bringen Partikel weg.Zureichend negative Werte können verursachen, dass Partikel innerhalb oder hinter dem Elternteil gerendert werden.
Methoden
Clear
Die Löschen-Methode löscht sofort alle vorhandenen Partikel, die durch die Emission durch natürliche Emission des emittiert wurden oder durch Emission durch Emission übermittelt wurden.
Rückgaben
Code-Beispiele
This code sample causes a ParticleEmitter to ParticleEmitter:Emit() particles in bursts of 10 every 2 seconds. It ParticleEmitter:Clear()s any existing particles before doing so.
local emitter = script.Parent
while true do
emitter:Clear()
emitter:Emit(10)
task.wait(2)
end
Emit
Die Emit -Methode wird die ParticleEmitter sofort die angegebene Anzahl von Partikeln emittieren lassen.
Parameter
Die Anzahl der Partikel, die emittiert werden.
Rückgaben
Code-Beispiele
This code sample causes a parent ParticleEmitter to ParticleEmitter:Emit() particles based on how far the parent BasePart moves.
local RunService = game:GetService("RunService")
local emitter = script.Parent
local part = emitter.Parent
local PARTICLES_PER_STUD = 3
local lastPosition = part.Position
local distance = 0
local function onStep()
local displacement = part.Position - lastPosition
distance = distance + displacement.magnitude
local n = math.floor(distance * PARTICLES_PER_STUD)
emitter:Emit(n)
distance = distance - n / PARTICLES_PER_STUD
lastPosition = part.Position
end
RunService.Stepped:Connect(onStep)
emitter.Enabled = false
This code sample causes a ParticleEmitter to ParticleEmitter:Emit() particles in bursts of 10 every 2 seconds. It ParticleEmitter:Clear()s any existing particles before doing so.
local emitter = script.Parent
while true do
emitter:Clear()
emitter:Emit(10)
task.wait(2)
end