Blender Dokumentation: Partikelbewegung kontrollieren
Diese Seite bezieht sich auf Blender v2.46 |
Die Bewegung der Partikel kann auf vielfältige Weise beeinflusst werden:
- Mit Partikelphysik. Dazu gibt es gleich vier verschiedene Systeme:
- None: 'None' dient dazu, statische Partikelsysteme aus älteren Versionen in die Version ab 2.46 zu übersetzen.
- Newtonian: Bewegung aufgrund physikalischer Gesetze und mit der Möglichkeit, Anfangsgeschwindigkeit und Rotation vorzugeben.
- Keyed: Partikel, deren Ziele durch Partikelsysteme anderer Objekte vorgegeben werden können.
- Boids: Schwarmbewegung. Jeder Partikel hat eine (geringe) Eigenintelligenz, und kann auf andere Schwarmmitglieder sowie "Feinde" und "Ziele" reagieren.
- Mit Softbodys (nur für Hair Partikelsysteme)
- Durch Kraftfelder, Kollisionen und entlang Kurven
- Mit Lattices
Hier wird nur die Partikelphysik im eigentlichen Sinne, also die Einstellungsmöglichkeiten auf dem Physics-Panel besprochen.
Physik: Newtonian
BearbeitenDies sind die "normalen" Physikeinstellungen. Partikel beginnen mit der eingestellten Geschwindigkeit und Rotation und ändern Geschwindigkeit und Richtung aufgrund von Kräften.
- Integration: Sie können verschiedene Berechnungsmethoden für die Bewegung einstellen:
- Euler: Auch als Forward Euler bezeichnet. Der einfachste Ansatz. Sehr schnell, aber auch mit weniger guten Ergebnissen. Wird keine Dämpfung (Damp) benutzt, gewinnen die Partikel immer mehr Energie, z.B. bei jeder Kollision mehr Geschwindigkeit. Benutzen Sie diese Methode für kurze Simulationen oder für Simulationen mit viel Dämpfung, bei der die Genauigkeit keine zu große Rolle spielt.
- Midpoint: Runge-Kutta Verfahren 2. Ordnung. Langsamer als Euler aber mit genaueren Ergebnissen. Bei konstanter Beschleunigung bleibt die Energie erhalten, auch bei vielen Kollisionen. Die Partikel werden also nicht schneller (jedenfalls höchstens in Einzelfällen).
- RK4: Runge-Kutta Verfahren 4. Ordnung. Hier bleibt die Energie auch dann erhalten, wenn die Beschleunigung nicht konstant ist. Sie sollten dieses Berechnungsverfahren nur einsetzen, wenn Midpoint nicht genau genug ist.
- Initial velocity: Anfangsgeschwindigkeit der Partikel in der Richtung von
- Object: ...der Bewegung des Emitterobjektes
- Normal: ...der Oberflächennormalen des Emitters
- Random: ...einem zufälligen Vektor
- Tan & Rot: ...einem Vektor senkrecht zur Oberfläche. Die Richtung des Vektors wird mit Rot eingestellt.
- (Reactors) Particle: ...der Geschwindigkeit des Target-Partikels
- (Reactors) Reactor: ...einem Vektor weggerichtet von dem Ort des Target-Partikels zur Reaktionszeit
- Rotation [Drehung] Um die Drehung eines Partikels zu beurteilen, können Sie auf dem Visualization-Panel den Punkt Axis wählen und die Draw Size erhöhen.
- Dynamic: die Rotationsgeschwindigkeit kann sich auf dem Weg des Partikels ändern (durch Kollisionen mit anderen Objekten), ohne Dynamic bleibt die Rotationsgeschwindigkeit konstant.
- Rotation: die Drehung des Partikels bei seiner Emission. Dabei wird die X-Achse ausgerichtet in Richtung von ...
- None: ...der globalen X-Achse
- Normal: ...der Oberflächennormalen
- Velocity: ...der Anfangsgeschwindigkeit des Partikels
- Global X/Y/Z: ...den globalen Achsen
- Object X/Y/Z: ...den lokalen Achsen des Objekts
- Random: Variiert die Rotation zufällig
- Phase/Rand: Drehung um die X-Achse des Partikels, also die Position der Y- und Z-Achse des Partikels. Rand ermöglicht eine zufällige Variation der Phase.
- Angular v: die Rotationsgeschwindigkeit. Mit der Dropdown-Box bestimmt man die Achse der Rotation:
- None: ein Null-Vektor.
- Spin: der Geschwindigkeitsvektor der Partikel
- Random: ein zufälliger Vektor.
- Global effects: [globale Kräfte]
- AccX,Y,Z: eine Beschleunigung entlang der globalen Achsen. Gravitation ist dann eine negative Beschleunigung an der Z-Achse.
- Drag: Reibungskräfte abhängig von der Geschwindigkeit und der Größe (Size) der Partikel.
- Brown: eine zufällige Kraft, die sich von Frame zu Frame ändert.
- Damp: Dämpfung der Bewegung unabhängig von der Geschwindigkeit der Partikel.
Physik: Keyed
BearbeitenKeyed-Partikel folgen den Partikeln anderer Partikelsysteme (des gleichen oder anderer Objekte). Das erlaubt:
- zum einen eine sehr komplexe Partikelbewegung, da die Bahn eines Partikels durch die Bewegung von anderen Partikelsystemen festgelegt wird.
- den Aufbau einer Kette von Partikelsystemen, wodurch das sichtbare Partikel der Reihe nach verschiedenen Physikeinflüssen gehorchen kann.
Außerdem können Keyed-Partikel als Strands gerendert werden, man kann also bewegte Haare bei vollständiger Kontrolle der Bewegung erzeugen. Diese Form der Animation wäre z.B. für einen Webstuhl einsetzbar (Abb. 3).
Nur das erste [First] einer Kette von Keyed-Systemen wird gerendert. Als letztes Zielsystem von Keyed-Partikeln kann bspw. ein System mit None-Physik und None-Visualization genommen werden.
Um ein Keyed-Partikelsystem zu verwenden, benötigt man zumindest zwei Partikelsysteme:
- Das erste System hat Keyed-Physik, und die Option First muss aktiviert sein. Dies wird das sichtbare System.
- Das zweite System hat normale Physik, oder kann ebenfalls Keyed-Physik bekommen - allerdings ohne die Option First. Dies ist das Ziel des ersten Systems.
- In das Feld Keyed Target muss der Objektname und die Nummer des Zielsystems eingetragen werden.
Benutzt man nur ein Keyed-System, werden sich die Partikel in ihrer Lebenszeit vom Emitter zum Ziel bewegen. Je kürzer die Lebenszeit, desto schneller die Bewegung. Ist mehr als ein Keyed-System in einer Kette von Systemen, wird die Lebenszeit gleichmäßig aufgeteilt. Dies kann u.U. zu unterschiedlichen Partikelgeschwindigkeiten zwischen den Zielen führen. Daher kann die Zeit manuell aufgeteilt werden:
- Timed: Diese Option ist nur für das erste Keyed-System verfügbar. Sie arbeitet in Kombination mit dem Time-Regler der anderen Keyed-Systeme in einer Kette.
- Time-Regler: Stellt den Bruchteil an Partikellebenszeit ein, der für die Bewegung verwendet wird.
Ein Beispiel soll diese Aufteilung verdeutlichen:
Angenommen Sie haben zwei Keyed-Systeme in einer Kette und ein drittes System als Ziel. Die Partikellebenszeit des ersten Systems soll 50 Frames betragen. Dann bewegen sich die Partikel innerhalb von 25 Frames vom ersten System zum zweiten, und innerhalb weiterer 25 Frames vom zweiten System zum Ziel.
Verwendet man den Time-Button im ersten System, erscheint der Time-Regler im zweiten System. Voreingestellt ist ein Wert von 0.5, also wird die Zeit zwischen den Systemen gleichmäßig aufgeteilt. Stellen Sie die Time im zweiten System auf 1, bewegen sich die Partikel innerhalb ihrer Lebenszweit vom ersten zum zweiten System und sterben dort. Stellen Sie Time auf 0, starten die Partikel am zweiten System und bewegen sich von dort zum Ziel.
Physik: Boids
BearbeitenBoids-Partikel sind in der Lage, auf andere Objekte und sich selbst zu reagieren. Sie versuchen Ziele zu erreichen oder zu vermeiden und den Partikelschwarm zusammenzuhalten, dabei aber nicht zusammenzustoßen.
Die Reihenfolge der Befehle unter Behaviour spielt eine wesentliche Rolle, da Boids nur eine bestimmte Menge an Informationen verarbeiten können, eventuell werden nur die ersten drei Parameter voll ausgewertet.
Boids versuchen Deflector-Objekte zu vermeiden, Objekte mit Spherical Fields werden angestrebt (positive Strength), oder die Boids fliehen vor ihnen (negative Strength). Die Objekte müssen eine gemeinsame Ebene mit dem Emitter des Partikelsystems teilen. Diese Ebene muss dabei nicht gerendert werden.
Behaviour
Bearbeiten- Nur eine bestimmte Menge an Information kann gleichzeitig ausgewertet werden.
- Die Regeln werden von oben nach unten abgearbeitet. Sie können die Reihenfolge ändern. Sobald die Kapazität des Boids voll ist, werden die anderen Regeln ignoriert.
- Jede Regel kann mit einem Gewicht von -1 bis +2 gewichtet werden.
- Normales Verhalten kann bei Werten zwischen 0 und 1 erwartet werden.
- Bei einer Gewichtung zwischen 1 und 2 reagieren die Boids zu stark.
- Bei einer Gewichtung zwischen -1 und 0 verhalten sich die Boids entgegengesetzt zur Regel.
Und nun die einzelnen Regeln:
- Collision: Objekte mit aktivierter Deflection werden vermieden.
- Avoid: Flucht vor "Raubtieren", also Objekten mit Spherical Fields mit negativer Strength.
- Crowd: Wie stark andere Boids vermieden werden.
- Center: Wie stark der Boid versucht, das Zentrum des Schwarms zu erreichen.
- AvVel: Wie stark die mittlere Geschwindigkeit beibehalten werden soll.
- Velocity: Wie stark die Geschwindigkeit benachbarter Boids angenommen werden soll.
- Goal: Wie stark Ziele angestrebt werden, also Objekte mit Spherical Fields mit positiver Strength.
- Level: Wie stark der Z-Wert beibehalten werden soll. Die Boids versuchen dann, möglichst nicht ihre Höhe zu ändern. Deaktiviert für 2D-Boids.
Physics
Bearbeiten- MaxVelocity: Höchstgeschwindigkeit
- AvVelocity: Angestrebte, mittlere Geschwindigkeit
- Die Beschleunigungsfaktoren [Acceleration] bestimmen die Drehung (lateral) und Vorwärtsbewegung (tangential) bezogen auf die Höchstgeschwindigkeit. Also bestimmen sie, wie schnell sich ein Partikel drehen oder beschleunigen kann.
- Banking: Schräglage in Kurven (1=natürliche Schräglage).
- MaxBanking: Wie stark die Schräglage maximal werden darf.
- N: Wie viele Nachbarn für jeden Boid berücksichtigt werden.
- 2D:
- Die Bewegung der Boids wird auf die Oberfläche eines Objektes (wenn angegeben) beschränkt, sowie auf einen bestimmten Z-Wert.
- Gibt es keine Flächen unter den XY-Koordinaten der Boids, wird der GroundZ-Wert benutzt.
- Boids verteilen sich also z.B. auf einer Kugelhälfte, und "tropfen" dann herunter (auf den GroundZ).
Deflektor- und Field-Objekte
BearbeitenWie bereits erwähnt, reagieren Boids auf umgebende Deflektorobjekte und Felder.
- Deflection: Boids versuchen Objekte zu vermeiden, für die Deflection angestellt ist. Die Stärke dieser Regel stellen Sie mit dem Parameter Collision ein. Das funktioniert gut mit konvexen (also nach außen gewölbten) Objekten, weniger gut mit konkaven Objekten.
- Spherical fields: Objekte mit Spherical Fields können als "Feinde" fungieren, wenn die Felder negative Stärke haben. Die Boids versuchen vor diesen Objekten zu flüchten. Bei Feldern mit positiver Stärke versuchen die Boids diese Objekte zu erreichen.
Nicht nur Objekte können als Träger eines Kraftfeldes dienen, auch die Partikel selbst. So kann man ein Partikelsystem als "Räuber" verwenden, ein anderes Partikelsystem als "Beute".
Wenn man Die on hit auf dem Extras-Panel aktiviert, können die "Beute"-Partikel von den "Räubern" gefressen werden. Dazu müssen die "Räuber" ein Feld mit negativer Stärke besitzen. Die Größe der "Räuber" und der "Beute" (also in welchem Abstand voneinander sie reagieren) kann mit dem Size-Button auf dem Extras-Panel eingestellt werden.
Links
Bearbeiten- Particle Rewrite Dokumentation
- Entwicklung des Partikelsystems
- Boids Beispielvideo
- Praktische Anwendung über das Verhalten von Schwarmbewegungen in der Sendung "Quarks & Co"