Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Propertys des 3D-Partikelsystems

Emitter-Propertys

../../../_images/particle_props_emitter.webp

Die Checkbox neben der Property Emittierend aktiviert und deaktiviert das Partikelsystem. Partikel werden nur verarbeitet und gerendert, wenn die Box aktiviert ist. Sie können diese Property zur Laufzeit setzen, wenn Sie Partikelsysteme dynamisch aktivieren oder deaktivieren wollen.

Das Property Menge steuert die maximale Anzahl von Partikeln, die zu einem bestimmten Zeitpunkt sichtbar sind. Erhöhen Sie den Wert, um mehr Partikel zu erzeugen, allerdings auf Kosten der Performance.

Das Property Mengenverhältnis ist die Anzahl der Partikel im Vergleich zu der Menge, die emittiert wird. Wenn der Wert kleiner als 1.0 ist, wird die Menge der Partikel, die während der Lebensdauer emittiert werden, dem Wert Menge * Mengenverhältnis entsprechen. Das Ändern dieses Wertes während des Emittierens wirkt sich nicht auf bereits erzeugte Partikel aus und führt nicht zu einem Neustart des Partikelsystems. Dies ist nützlich, um Effekte zu erzeugen, bei denen die Anzahl der emittierten Partikel über die Zeit variiert.

Sie können einen anderen Node als Sub-Emitter festlegen, der als Child-Node eines jeden Partikels erzeugt wird. Siehe den Sub-Emitter-Abschnitt in diesem Handbuch für eine detaillierte Erklärung, wie man einen Sub-Emitter zu einem Partikelsystem hinzufügt.

Zeit-Propertys

../../../_images/particle_props_time.webp

Die Property Lebensdauer bestimmt, wie lange jedes Teilchen existiert, bevor es wieder verschwindet. Sie wird in Sekunden gemessen. Viele Propertys der Partikel können so eingestellt werden, dass sie sich während der Lebensdauer des Partikels ändern und nahtlos von einem Wert zum anderen übergehen.

Lebensdauer und Menge sind miteinander verbunden. Sie bestimmen die Emissionsrate des Partikelsystems. Wann immer Sie wissen wollen, wie viele Partikel pro Sekunde erzeugt werden, ist dies die Formel, die Sie verwenden würden:

\[Partikel pro Sekunde = \frac{Menge}{Lebensdauer}\]

Beispiel: Beim Emittieren von 32 Partikeln mit einer Lebensdauer von jeweils 4 Sekunden würde das System 8 Partikel pro Sekunde emittieren.

Das Property Interp zum Ende bewirkt, dass alle Partikel des Nodes gegen das Ende ihrer Lebensdauer interpolieren.

Wenn die Checkbox neben dem Property Einmalig angekreuzt ist, wird das Partikelsystem so viele Partikel aussenden, wie in Menge angegeben ist und sich dann selbst deaktivieren. Es "läuft" nur einmal. Diese Property ist standardmäßig nicht aktiviert, so dass das System so lange Partikel ausstößt, bis es deaktiviert oder manuell zerstört wird. Einmalige Partikel eignen sich gut für Effekte, die auf ein einzelnes Ereignis reagieren, wie z.B. das Aufnehmen von Gegenständen oder Splitter, die abplatzen, wenn ein Geschoss auf eine Wand trifft.

Das Property Vorverarbeitung ist eine Möglichkeit, zu einem Punkt in der Mitte der Lebensdauer des Partikelsystems vorzuspulen und von dort aus mit dem Rendering zu beginnen. Sie wird in Sekunden gemessen. Ein Wert von 1 bedeutet, dass wenn das Partikelsystem startet, es so aussieht, als ob es bereits eine Sekunde gelaufen wäre.

Dies kann nützlich sein, wenn Sie möchten, dass das Partikelsystem so aussieht, als sei es schon eine Weile aktiv, obwohl es gerade erst in die Szene geladen wurde. Betrachten Sie das folgende Beispiel. Beide Partikelsysteme simulieren Staub, der in der Gegend herumfliegt. Mit einem Preprocess-Wert von 0 würde es in den ersten paar Sekunden keinen Staub geben, da das System noch nicht genug Partikel emittiert hat, um den Effekt wahrnehmbar zu machen. Dies ist im Video auf der linken Seite zu sehen. Vergleichen Sie das mit dem Video auf der rechten Seite, in dem das Partikelsystem für 4 Sekunden vorverarbeitet wird. Der Staub ist von Anfang an voll sichtbar, weil wir die ersten vier Sekunden der "Einrichtungszeit" übersprungen haben.

../../../_images/particle_preprocess.webp

Keine Vorverarbeitung (links) vs. 4 Sekunden Vorverarbeitung (rechts)

Sie können das Partikelsystem mit der Property Geschwindigkeitsskalierung verlangsamen oder beschleunigen. Dies gilt sowohl für die Verarbeitung der Daten als auch für das Rendern der Partikel. Setzen Sie sie auf 0, um das Partikelsystem komplett anzuhalten oder setzen Sie sie auf etwas wie 2, um es doppelt so schnell zu machen.

../../../_images/particle_speed_scale.webp

Verschiedene Geschwindigkeitsskalierungswerte: 0,1 (links), 0,5 (Mitte), 1,0 (rechts)

Das Property Explosivität steuert, ob die Partikel nacheinander oder gleichzeitig emittiert werden. Ein Wert von 0 bedeutet, dass die Partikel nacheinander emittiert werden. Ein Wert von 1 bedeutet, daß alle in Menge definierten Partikel gleichzeitig emittiert werden, was dem Effekt ein "explosiveres" Aussehen verleiht.

Das Property Zufälligkeit fügt dem Timing der Partikelemission eine gewisse Zufälligkeit hinzu. Wenn sie auf 0 gesetzt ist, gibt es überhaupt keine Zufälligkeit und das Intervall zwischen der Emission eines Teilchens und dem nächsten ist immer gleich: die Teilchen werden in regelmäßigen Abständen emittiert. Eine Zufälligkeit von 1 macht das Intervall komplett zufällig. Sie können diese Property benutzen, um die Gleichförmigkeit Ihrer Effekte aufzubrechen. Wenn Explosivität auf 1 gesetzt ist, hat diese Property keinen Effekt.

Partikel, die mit niedrigen FPS laufen

Interpolation off (left) vs. on (right)

Die Property Feste FPS begrenzt, wie oft das Partikelsystem abgearbeitet wird. Dies beinhaltet Property-Updates sowie Kollisionen und Attraktoren. Dies kann die Performance erheblich verbessern, besonders in Szenen, die viel Gebrauch von Partikelkollisionen machen. Beachten Sie, dass dies nicht die Geschwindigkeit ändert, mit der sich die Partikel bewegen oder rotieren. Hierfür würde man die Property Geschwindigkeitsskalierung verwenden.

Wenn Sie Feste FPS auf sehr niedrige Werte setzen, werden Sie feststellen, dass die Partikelanimation abgehackt aussieht. Dies kann manchmal erwünscht sein, wenn es zum Designkonzept passt, aber meistens möchte man, dass die Partikelsysteme flüssig animiert werden. Dafür gibt es die Property Interpolieren. Sie überblendet die Partikel-Propertys zwischen den Aktualisierungen, so dass selbst ein Partikelsystem, das mit 10 FPS läuft, so gleichmäßig erscheint wie ein System, das mit 60 läuft.

Bemerkung

Bei Verwendung von Partikelkollision kann es zu Tunneleffekten kommen, wenn sich die Partikel schnell bewegen und die Kollider dünn sind. Dies kann durch Erhöhen der Festen FPS (auf Kosten der Leistung) behoben werden.

Kollisions-Propertys

Siehe auch

Zum Einrichten einer Partikelkollision sind die folgenden weiteren Schritte erforderlich, die in 3D-Partikelkollisionen beschrieben sind.

Die Property Basisgröße definiert die Default-Kollisionsgröße eines jeden Partikels, die verwendet wird, um zu überprüfen, ob ein Partikel gerade mit der Umgebung kollidiert. Normalerweise sollte diese Größe ungefähr der Größe des Partikels entsprechen. Es kann sinnvoll sein, diesen Wert für Partikel zu erhöhen, die sehr klein sind und sich sehr schnell bewegen, um zu verhindern, dass sie durch die Kollisionsgeometrie dringen.

Zeichnung-Propertys

Partikelzeichnungs-Propertys

Die Eigenschaft Sichtbarkeit AABB definiert eine Box um den Ursprung des Partikelsystems. Solange sich ein Teil dieser Box im Sichtfeld der Kamera befindet, ist das Partikelsystem sichtbar. Sobald es das Sichtfeld der Kamera verlässt, wird das Partikelsystem nicht mehr gerendert. Sie können diese Property verwenden, um die Performance zu steigern, indem Sie die Box so klein wie möglich halten.

Beachten Sie beim Festlegen einer Größe für „Sichtbarkeit AABB“ Folgendes: Partikel, die sich außerhalb dieser Grenzen befinden, verschwinden sofort, wenn sie das Sichtfeld der Kamera verlassen. Partikelkollisionen treten auch außerhalb von „Sichtbarkeit AABB“ nicht auf. Obwohl dies technisch gesehen kein Fehler ist, kann es sich negativ auf das visuelle Erlebnis auswirken.

Wenn die Property Lokale Koordinaten aktiviert ist, verwenden alle Partikelberechnungen das lokale Koordinatensystem, um Dinge wie Oben und Unten, Schwerkraft und Bewegungsrichtung zu bestimmen. Oben und unten würden zum Beispiel der Rotation des Partikelsystems oder des übergeordneten Nodes folgen. Wenn die Property nicht aktiviert ist, wird der globale World Space für diese Berechnungen verwendet: Unten ist immer -Y im World Space, unabhängig von der Rotation des Partikelsystems.

../../../_images/particle_coords.webp

Local-Space-Koordinaten (links) vs. World-Space-Koordinaten (rechts)

Die Property Zeichenreihenfolge bestimmt die Reihenfolge, in der die einzelnen Partikel gezeichnet werden. Index bedeutet, dass sie in der Reihenfolge ihrer Emission gezeichnet werden: Partikel, die später erzeugt werden, werden über die früheren gezeichnet. Lebensdauer bedeutet, dass sie in der Reihenfolge ihrer verbleibenden Lebensdauer gezeichnet werden. Umgekehrte Lebensdauer kehrt die Zeichenreihenfolge der Lebensdauer um. Sichttiefe bedeutet, dass die Partikel entsprechend ihrer Entfernung von der Kamera gezeichnet werden: Diejenigen, die näher an der Kamera sind, werden über denjenigen gezeichnet, die weiter entfernt sind.

Die Property Transformationsausrichtung kontrolliert die Standardrotation des Partikels. Deaktiviert bedeutet, dass sie sich nicht auf eine bestimmte Weise ausrichten. Stattdessen wird ihre Drehung durch die im Prozessmaterial eingestellten Werte bestimmt. Z-Billboard bedeutet, dass die Partikel immer in Richtung der Kamera ausgerichtet sind. Dies ist ähnlich der Property Billboard im Standard-Material. Y nach Bewegungsrichtung bedeutet, dass die Y-Achse eines jeden Partikels mit seiner Bewegungsrichtung übereinstimmt. Dies kann für Dinge wie Geschosse oder Pfeile nützlich sein, bei denen man möchte, dass die Partikel immer "nach vorne" zeigen. Z-Billboard + Y nach Bewegungsrichtung kombiniert die beiden vorherigen Modi. Die Z-Achse eines jeden Partikels zeigt in Richtung der Kamera, während die Y-Achse mit dem Geschwindigkeitsvektor übereinstimmt.

Trail-Propertys

Partikel-Trails

Partikel-Trail-Propertys

Die Property Aktiviert steuert, ob Partikel als Trails gerendert werden. Das Kästchen muss markiert sein, wenn Sie Partikel-Trails verwenden wollen.

Das Property Länge in Sek bestimmt, wie lange ein Trail emittiert werden soll. Je länger diese Dauer ist, desto länger wird der Trail sein.

Siehe den Abschnitt Partikel-Trails in diesem Handbuch für eine detaillierte Erklärung, wie Partikel-Trails funktionieren und wie man sie einrichtet.