Artikel Fokus: In diesem Tutorial, Dan ebberts untersucht, wie können Sie Ausdrücke in After Effects 5.5 bis eine ziemlich anspruchsvolle 3D-Partikel-Generator. Unsere Partikel werden auf AnfangsgeschWindigkeit, Schwere, Wind, Ziehen, Und vieles mehr. Mit dieser Partikel-Generator, Wir werden prüfen, wie das Erstellen Explosionen, Rauch, Ein Feuer Blast, Schneefall, Und sogar eine Flüssigkeit fließen wie -. Wir erforschen, wie man alle Teile wieder verwendbar, Die wird es uns ermöglichen, zu simulieren, wie Brunnen-Teilchen-Streams. Das ist recht weit fortgeschritten.
Die Grundidee ist, dass wir importieren Sie eine grafische Darstellung eines einzelnen Teilchens. Wir ziehen Sie es in unserer comp und es 3D -. Wir unsere physische Simulation Ausdruecke zu unseren Teilchen und dann doppelte Schicht, dass genug Zeit, um ein überzeugendes Ergebnis. Wir setzen die Ausdrücke so, dass jedes Teilchen (Layer) verhält sich anders. Wir werden viele Ausdrücke für die Anwendung der Teilchen die Eigenschaften, Einschließlich der PoSITion, Maßstab, Deckkraft, Und Rotation.
Wir starten mit einem einfachen Explosion und entwickeln komplexe Ausdrücke von dort. Wird es schließlich mit ein paar ziemlich behaart und einige mathematische Physik (sorry!), Aber die gute Nachricht ist, dass Sie nicht unbedingt zu verstehen, genau wie die Begriffe der Arbeit - Sie müssen nur wissen, wie sie modifiziert werden können, um sie zu tun, was Sie wollen. Im ersten Teil des Tutorials, Ich werde versuchen, was zu tun, So weit wie möglich, Ist, um die GrundlAltern, wie man die Begriffe Arbeit, und wie würden Sie ändern. Dann, Gegen Ende, Die stouthearted kann mich durch die behaarte Mathematik und Physik.
--- Strategie ---
Wir wollen, dass jeder unserer Partikel haben eine definierte Lebensdauer, die zufällig in einem bestimmten Bereich. Da wir die Anwendung Ausdrücke auf mehrere Eigenschaften der Teilchen, Wir müssen einiges zu kommunizieren, Informationen über die Lebensdauer der Partikel, um alle die Ausdrücke, die es brauchen. Wir tun dies, indem sie die Lebensdauer-Berechnungen in einem Ausdruck Kontrolle (wenn Sie möchten mehr über Meinungs-Kontrollen, Siehe mein Tutorial Bau der weltweit größten Kameramann). Wir werden dann mit dem Ausdruck, wie ein read-only Globale Variable Zugegriffen werden kann von allen anderen Ausdrücken für unsere Teilchen.
--- Let 's beginnen!---
Grünes Licht, und öffnen Sie die Projekt-Datei und öffnen Sie dann die "Explosion - Basic" comp. Sie werden bemerken, eine Grafik so genannte "Star Fackel" und ein Null-Layer, Die beiden haben sich auf 3D -. Wir werden mit der PoSITion des Null, um das Zentrum der Explosion. Wir verweisen auf die null als die Teilchen "Sender" und später werden wir das null um zu vermitteln "Emitter-GeschWindigkeit", um die Teilchen. Wählen Sie den "Star Flare"-Schicht, und geben Sie "u", um alle Eigenschaften, die Ausdrücke auf sie. Auch Strg + Umschalt + T (PC) bzw. Befehlstaste + Umschalttaste + T ( MAC ), Um die Effekte, die die Schicht. Sie werden sehen, dass ein "Punkt"-Control-Anwendung gefunden hat und Umbenennung in "Leben". Sie können sich frAltern, warum wir mit einem Punkt statt einem Regler, um das "Leben"-Wert. Der Grund dafür ist, dass später (wenn wir an wieder verwendbaren Teilchen) wir müssen beide "Leben" und der "Geburt" mal so brauchen wir eine Kontrolle, kann zwei Werte. Könnten wir nicht nur zwei Regler? Nein, Da die Berechnungen für die "Geburt" und "Leben" zu tun haben, innerhalb der gleichen Ausdruck, dass es funktioniert. In der Timeline, Klicken Sie auf die twirly neben "Punkt", um den Ausdruck auf das "Leben" Nummer Kontrolle:
Lmin = 1.5; / / Mindest-Teilchen Leben
Lmax = 2.5; / / Maximale Partikelgröße Leben
Sehend_random (1,True);
Leben = random (Lmin,Lmax);
Geburt = 0;
[Geburt,Leben]
Dieser Ausdruck wird eine zufällige "Leben" Wert für unsere Partikel, die zwischen dem 1..5 und 2.5 Sekunden. Dieser Wert wird in das Stromnetz der zweite Element unserer Kontrolle Variable. Das erste Element ( "Geburt") ist nur auf Null gesetzt, da für diese erste Explosion comp alle Partikel werden geboren zum Zeitpunkt Null. Die "seed_random" Call nur erzählt After Effects dass wir, um die gleiche Zufalls-Wert für "Leben" Jedes Mal, wenn wir das Ausdruck (sonst das "Leben" Wert Hop sich auf jedem Bild -, die nicht Helfen Sie uns Hier). Wenn Sie erfahren möchten mehr über die "seed_random", Siehe mein Tutorial Erzeugung zufälliger Motion. Wenn Sie wollten die Lebensdauer der Partikel, Sie würde nur die "Lmin" und "lmax" Werte.
Klicken Sie auf die twirly neben PoSITion, um diesen Ausdruck:
Geburt = Effekt ( "Leben").Param ( "point") [0];
Leben = Effekt ( "Leben").Param ( "point") [1];
Herkunft = this_comp.Schicht ( "null 1").PoSITion.Value_at_time (Geburt);
Alter = Zeitpunkt der Geburt;
Sehend_random (1,True);
S = random (Vmin,Vmax); / / AnfangsgeschWindigkeit
A = degrees_to_radians (Random (180)); / / Winkel von vertikalen
R = degrees_to_radians (Random (360)) / / Rotation um Y-Achse
X = s * Mathematik.Sin (a) * Mathematik.Cos (r);
Y =- s * Mathematik.Cos (a);
Z = s * Mathematik.Sin (a) * Mathematik.Sin (r);
V = [x,y,Z];
Herkunft + v * Zeit
Dies ist die grundlegende PoSITion Ausdruck für eine "Null-g" Explosion. Unsere Teilchen wird in einer zufälligen Richtung im 3D-Raum von der "Herkunft" (das ist nur die PoSITion des Null-Layer) mit einer ersten GeschWindigkeit zwischen 500 und 700 Einheiten (das entspricht etwa Pixel pro Sekunde). Der Teilchen, wird sich weiter, dass GeschWindigkeit und Richtung, bis er stirbt aus. Wir haben noch nicht berücksichtigt im Wind, Schwere, Und ziehen Sie. Ich bin sicher, dass Sie bemerkt, die drei Linien, die die JavaScript-trigonometrischen Funktionen für die Berechnung der x, y, Und z-Komponenten der Teilchen-GeschWindigkeit Vektor. Dieser Vektor wird aus der zufälligen Werte der GeschWindigkeit ( "s"), Start Winkel von der Vertikalen ( "a") und die Rotation in Bezug auf die NOA die y-Achse ( "r"). Machen Sie sich keine Sorgen zu viel über all diese Dinge Vektor an dieser Stelle - wie ich schon sagte, Sie müssen nicht verstehen, wie es funktioniert nutzen zu können und wir für sie im Einzelnen später. Das Wichtigste was Sie wissen müssen über diese Version von der PoSITion Ausdruck, dass Sie bearbeiten die "Vmin" und "vmax" Werte, um die ursprüngliche GeschWindigkeit der Teilchen. Später werden wir ein Hemmnis für den Winkel von der Vertikalen, die es uns ermöglichen, eine Art Brunnen-Spray.
Klicken Sie auf das kleine twirly neben Maßstab, um den Ausdruck:
Max_Maßstab = 50; / / maximale Umfang
S =.2; / / Maßstab Ramp-up Zeit
Leben = Effekt ( "Leben").Param ( "point") [1];
Alter = Zeit-Effekt ( "Leben").Param ( "point") [0]; / / Alter = Zeit der Geburt
If (Alter n) (
X = (Alter / s) * Max_Maßstab;
[x,x,100]
) else (
[Max_Maßstab,Max_Maßstab,100]
}
All dies tut, ist Ausdruck für die Rampe Skala von 0 auf den Wert in "Max_Maßstab" (50% in diesem Fall) über den Zeitraum von "s" (.2 Sekunden lang in diesem Fall). Wenn Sie wollen, dass die Partikel zu erreichen maximale Größe schneller oder langsamer, Sie bearbeiten den Wert für "s". Beachten Sie, dass dieser Wert sollte weniger als "Lmin" des "Lebens" Ausdruck, wenn Sie wollen sicher sein, dass die volle Größe erreicht, bevor es stirbt.
Klicken Sie jetzt auf die twirly neben Z-Rotation und Sie werden sehen, dieser Ausdruck:
Geburt = Effekt ( "Leben").Param ( "point") [0];
Sehend_random (1,True);
R = random (Rmin,Rmax);
Leben = Effekt ( "Leben").Param ( "point") [1];
Alter = Zeitpunkt der Geburt;
If (Leben == 0) (
0
) else (
R / Leben * Alter
}
Dieser Ausdruck wählt einen zufälligen Wert (Grad zwischen -1080 und 1080 Grad) für die Rotation um die Z-Achse über die Lebensdauer der Partikel. Hinweis, dass dieser Ausdruck die "Geburt" und "Leben" aus dem Punkt, die Kontrolle. Beachten Sie auch die Nutzung des "seed_random"-Funktion, um sicherzustellen, dass der Wert des gewählten Zufallsrotation bleibt gleich jedes Mal, wenn der Ausdruck wird. Wenn Sie wollten, wie viel können die Partikel drehen, Sie bearbeiten die "Rmax" und "Rmin" Werte.
Schließlich, Klicken Sie auf die twirly neben Deckkraft, um diesen Ausdruck:
Leben = Effekt ( "Leben").Param ( "point") [1];
Alter = Zeit-Effekt ( "Leben").Param ( "point") [0];
If (Alter Leben) (
0
) else (
If (Alter Lebens-Zerfall) (
((Lebens-Alter) / Zerfall) * Max_Deckkraft;
) else (
Max_Deckkraft
}
}
Dieser Ausdruck werden die Fade-out des Teilchens am Ende seines Lebens. "Decay" ist es an der Zeit, In Sekunden, Dass der Fade-Dauer. Sie würden diesen Wert bearbeiten, wenn Sie wollten die Fade-out. Dieser Wert sollte geringer sein als die "Lmin" Wert des Lebens "Kontrolle. "Max_Deckkraft" ist, Wie Sie vielleicht erwarten, Der maximale Wert der Deckkraft, die Sie wollen, dass die Partikel zu erreichen.
Das war's für die Ausdrücke für diese erste Explosion. Wählen Sie den "Star Flare"-Schicht und dupliziere sie eine Menge Zeit. I in der Regel klicken Sie einfach auf "Strg + D (PC) oder cmd + d ( MAC ) Vier oder fünf Mal, Wählen Sie das Original und alle Kopien und dann drücken Sie Strg + D / Cmd + Haufen da mehr Zeit, um mindestens 50 Teilchen. Vorschau auf die NOA. Natürlich, Mit, dass viele Schichten, Mit jeweils fünf Ausdrücke für, So kann sie eine kleine Weile, um die Vorschau. Wenn Sie sich diese Technik, Sie haben, um gegen die Zeit machen mit genug Partikel, um eine überzeugende Wirkung. Sie sollte am Ende mit einem schönen 3D-Explosion, wo die Teilchen nur Knall aus in alle Richtungen, ohne dass Kräfte, die auf sie außer ihrer ursprünglichen GeschWindigkeit.
--ZERO-G Explosion mit 65 Teilchen
--- Let 's Get Physical ---
Lassen Sie uns jetzt direkt in den tiefen Ende des Pools, und fügen Sie den physikalischen Wirkungen von Wind -, Schwere, Ziehen, Sender und GeschWindigkeit zu unseren Standpunkt Ausdruck. Wir fügen den Code jetzt, Aber wir werden nicht unbedingt alle der neuen Parameter für jedes Beispiel. Wir gehen durch eine Menge von Beispielen, wenn, Bis wir alles unter. Grünes Licht, und öffnen Sie die "Explosion mit Physik" comp. Wählen Sie eine der "Stern Flare" Schichten und Typ "P", um die PoSITion Eigentum. Klicken Sie auf die twirly neben "PoSITion", um unsere neuen Ausdruck, die alle die Physik. Dies ist der neue Code:
Wie Sie sehen können, Wir haben für die Schwerkraft, Wind (die wir sie nicht verwenden in diesem Beispiel), Start Winkel, Ziehen, Sender und GeschWindigkeit. Machen Sie sich keine Sorgen darüber, wie sie noch alle Werke. Sie müssen nur wissen, dass Sie ändern den ersten sieben Parameter zu ändern, das Verhalten der Partikel. Alle anderen Ausdrücke sind immer noch die gleichen wie sie in der "Explosion - Basic" comp.
Grünes Licht und eine Vorschau des COMP. Sie werden bemerken, dass unsere Teilchen nun Begegnung Luftwiderstand (Drag) und sind von der Schwere. Wir haben auch den Start Winkel der Teilchen zwischen 0 und 110 Grad vertikal.
- Explosion mit der Schwerkraft (65 Teilchen)
Fehler passieren --- ---
öffnen und eine Vorschau auf die "Explosion twinkle" comp. Dies ist eine ältere Version von der "Explosion mit Physik" comp hatte, dass es einen Fehler in. Es stellt sich heraus, dass ich hatte die Forderung nach seed_random in den Ausdruck für die Nummer Kontrolle. Das Ergebnis ist ein Irrtum, wenn die Trübung schaltet sich ein und aus nach dem ZufallsprinZip nach dem Teilchen das Leben ist abgelaufen. Da dieser Effekt eigentlich ziemlich cool, Ich habe beschlossen, ihn um. Damit die "Fehler" wird ein "Feature". Hier ist der Code für die falsche Nummer Kontrolle:
Lmin = 1.5; / / Mindest-Teilchen Leben
Lmax = 2.5; / / Maximale Partikelgröße Leben
Leben = random (Lmin,Lmax);
Geburt = 0;
[Geburt,Leben]
Wo es Rauch .....
Jetzt wollen wir versuchen unsere Hand auf die Schaffung einiger Rauch zu gehen mit unseren Explosion. Von hier aus auf, Die Dinge etwas leichter. Um verschiedene Partikeleffekte, Nun haben wir im Wesentlichen nur noch die Parameter, wurden zu Beginn der verschiedenen Ausdrücke. Grünes Licht, und öffnen Sie die "Rauch" comp. Alles, was ich habe, um diesen Wettbewerb war es zu Überschneidungen mit der "Explosion mit Physik" comp und ersetzen Sie die "Star Flare"-Bild mit den "Rauch" Bild. Dann habe ich diese Änderungen an den Parametern in der Ausdruecke:
Ich habe auch die Mischung der Ebene von "normal" auf "Bildschirm".
Änderungen der Parameter spiegeln die Art und Weise, Rauch verhält sich anders als Reaktion auf die verschiedenen physikalischen Kräfte. Die Wirkung der Schwerkraft wurde stark reduziert. Die Wirkung des Windes wurde stark erhöht. Der z-Rotation ist viel weniger. Die Deckkraft der einzelnen Partikel wird nur auf 50%. Sie gelangen auf diese Werte, indem sie eine Vermutung auf, wie die Teilchen reagieren sollte, Und dann verändern sie, bis sie richtig. Grünes Licht und eine Vorschau des COMP. Hoffentlich werden Sie feststellen, wie die Parameter-Änderungen haben einen großen Unterschied im Verhalten der Partikel.
- Rauch mit 40 Teilchen
An dieser Stelle können Sie sich frAltern, warum wir nicht nur alle diese Parameter über Regler. Könnten wir tun, und es wäre sicherlich einfacher, die Parameter verändern. Das Problem ist, dass, wenn Sie es, Sie treffen auf eine ziemlich hohe machen Hit. Es könnte sich lohnen, Aber ich möchte die Dinge bedeuten, schlank und so weit wie möglich, Aber gerne versuchen es für Sie, wenn Sie möchten, dass.
--- Let 's ein wenig Schmutz auf die Mischung ---
öffnen und eine Vorschau auf die "Trümmer" comp. Dies ist nur eine Variation der "Explosion mit Physik" comp, wo ich die Teilchen auf "Eigenschaften" und ändern die Schwerkraft auf 80 und der Wind auf 80. Max_Maßstab ist so eingestellt werden, dass 75 und die Z-Rotation Ausdruck wurde dahingehend geändert, wählen Sie einfach eine zufällige Orientierung zwischen 180 und -180 Grad. Die Deckkraft Ausdruck wurde deaktiviert, Verlassen die Deckkraft auf 100%.
--- Setzen Sie die Teile zusammen ---
öffnen und eine Vorschau auf die "Combo-Explosion comp". Dieser comp enthält die "twinkle Explosion", "Rauch", Und "Trümmer" comps zusammen um zu zeigen, wie die einzelnen Teilchen können zusammenarbeiten, um eine komplexe Wirkung. Hinweis, dass der "Zusammenbruch Transformationen" Schalter wurde aktiviert. Dies ist so, dass die Partikel der drei comps wird vermischen richtig im 3D-Raum.
- Kombination mehrerer comps zu komplexen Wirkung
--- geboren-Partikel wieder ---
Jetzt werden wir sehen, dass unsere Teilchen wieder verwendbar. Das ist, Nach einer Teilchengröße stirbt, Wir wollen, dass sie wiedergeboren werden mit verschiedenen Attributen, Als ob es sich um ein neues Teilchen. Dies wird es uns ermöglichen, einen kontinuierlichen Strom von Teilchen. Um dies zu ändern, müssen wir den Ausdruck für unser "Leben" Nummer Kontrolle. Hier ist der neue Code:
Lmin = 1.5; / / Mindest-Teilchen Leben
Lmax = 2.5; / / Maximale Partikelgröße Leben
I = 1;
Sehend_random (I,True);
Delay = random (Lmax);
Geburt = Verzögerung;
Tod = Verzögerung;
If (Zeit Verzögerung) (
[0,0]
) else (
While (time = Tod) (
I + = 1;
Sehend_random (I,True);
Geburt = Tod;
Leben = random (Lmin,Lmax);
Tod + = Leben;
}
[Geburt,Leben]
}
Dieser Ausdruck wurde verändert, um eine Änderung der Ausdrücke für meine "generieren zufällige Motion "Tutorial. Es ist ein erster, Zufällige Verzögerung, bevor die Generation der ersten Inkarnation des Teilchens. Diese Verzögerung wird zwischen 0 und der maximalen Partikelgröße Leben. Anderenfalls, Alle der "ersten Generation" Teilchen erzeugt werden würde zur selben Zeit (wie in einer Explosion), Das ist nicht das, was wir wollen, dass für einen Brunnen-Art-Effekt. Im Allgemeinen, Dieser Ausdruck funktioniert, indem man die Zeit-Linie in zufälliger Länge "Segmente", die zwischen "Lmin" und "lmax" Dauer. Jedes Segment stellt ein neues Leben für die span-Teilchen. , damit die Partikel regeneriert haben unterschiedliche Merkmale auf als das Original, Die seed_random ()-Aufrufe in der LAlter und Z-Rotation Ausdruecke wurde zu diesem:
Sehend_random (Geburt,True);
Dies führt dazu, dass die Partikel der Geburt Zeit, als das Saatgut, , die sich in jedem "Leben" der Teilchen anders, weil die Geburt immer mal anders. Eine weitere Änderung, die an diesem Wettbewerb ist für den Wandel der "amax" (maximal Start Winkel von vertikal) der Parameter in der LAlter Ausdruck zu 30, so dass alle Partikel, wird in einer Richtung nach oben. Grünes Licht, und öffnen Sie die "Brunnen" comp und Vorschau. Sie sollten jetzt eine kontinuierliche Spray von Teilchen. Beachten Sie, dass diese comp enthält 100 Teilchen Schichten. Wenn Ihr Prozessor Drosseln, Können Sie löschen möchten einige Schichten und versuchen es erneut.
- Brunnen-Spray mit 100 Teilchen
--- zurück zu den Physik ---
Hinzugefügt, wenn wir den Code an die PoSITion zum Ausdruck bringt auch die körperlichen Auswirkungen, Haben wir ein, dass wir nicht blickte noch. Diesem Sinne ist die GeschWindigkeit, die von der "Sender", um die Teilchen. Zu diesem Punkt unsere Strahler (null Schichten) wurden alle stationären. Macht es Sinn, dass, wenn wir unsere Sender durch 3D-Raum, Die Partikel emittiert werden sollte, dass eine Tendenz haben, den Sender, bis die Auswirkungen der Drag, Schwere, Wind und senden Sie sie in andere Richtungen. Denn wir haben jetzt ein Brunnen Teilchen Spray in unserem Arsenal, Dies ist ein guter Zeitpunkt, um die Sender-GeschWindigkeit Eigentum. öffnen und eine Vorschau des "Moving-Sender 1" comp. In diesem Wettbewerb der Sender wurde keyframed, um im 3D-Raum und die GeschWindigkeit der Sender wird vermittelt, um die Teilchen. Ich habe parented eine neue Ebene ( "Spike Blob"), um die null, so dass Sie sehen können, wo der Sender ist. Kontrast, öffnen und eine Vorschau der "bewegten Emitter 2" comp. Das ist genau die gleiche comp, Aber der Code, fügt hinzu, in der Sender-GeschWindigkeit wurde deaktiviert. Sie sollten den Unterschied bemerken.
- bewegliche Strahler mit GeschWindigkeit vermittelt die Teilchen
- bewegliche Strahler mit GeschWindigkeit nicht vermittelt die Teilchen
--- mehr Teilchen Spaß ---
Ok jetzt sind wir nur noch zu rund goofing. Den letzten vier comps, dass wir sehen, sind nur Variationen über ein Thema. I'm not going to go in viele Details über diese, Aber ich bitte Sie zu prüfen, die Begriffe der einzelnen comp, um zu sehen, die, wie die Parameter (und manchmal der Code) wurden geändert, um eine andere Wirkung.
öffnen und eine Vorschau auf den "Schnee" comp. Es gibt ein paar Dinge zu beachten, zu diesem comp. Wenn Sie sich die PoSITion Ausdruck, Sie werden bemerken, dass wir haben einen neuen Parameter für Sender Breite. Was wir tun, mit dieser im Wesentlichen unsere Nummer-Sender in eine "Linie" Emitter. In diesem Fall haben wir die Sender Breite ( "EW") bis 600. Wenn ein Teilchen ist geboren, Seine ursprüngliche PoSITion ist innerhalb von plus oder minus die Hälfte der Sender Breite (in x-Richtung) von der PoSITion des Null -. Dies ermöglicht uns, neue Teilchen überall entlang dieser Linie. Eine andere Sache, die sich zu diesem Wettbewerb ist die Verwendung von mehreren Teilchen Bilder. Ich habe alle die Ausdrücke, die für ein Teilchen, Dupliziert sie drei Mal und ersetzt jede der Duplikate mit einem anderen Bild Schneeflocke. Ich habe dann alle vier der Schneeflocke Schichten und vervielfältigt sie eine Menge Zeit.
- Schnee mit mehreren Teilchen Bilder
öffnen und eine Vorschau auf die "Feuer-Blast" comp. In diesem comp Wind, Schwere, Und ziehen Sie wurden auf Null gesetzt. Alle Partikel werden in der negativen z-Richtung (in Richtung der Betrachter). Diese muss noch einiges an Arbeit, Aber es hat Potenzial.
- Feuer-Blast
Jetzt offen ist und eine Vorschau der "goop" comp. Dies war ein Versuch, eine Flüssig-Art-Flow. Comp dieser nutzt die "line-Sender" Konzept der "Schnee" und die comp "Farbton"-Effekt verwendet wird, um jedes Teilchen eine etwas andere Farbe. Es sich dabei um eine work in progress.
- Flüssigkeitssensoren Simulation
Schließlich, öffnen und eine Vorschau auf unsere letzten Beispiel, Die "Ringe" comp. Dieser comp ist ähnlich wie "Fire Blast" lanciert, dass es in all ihren Partikel in der negativen z-Richtung. Comp dieser hat auch eine Kamera, die keyframed, um etwas von einer Seite, um eine Front-Ansicht auf. Ich mit dieser comp nur um zu zeigen, dass können Sie auch diese Ausdrücke wie Bewegung Generatoren für Objekte, die Sie vielleicht denken, der normalerweise nicht als "Partikel".
- Ring-Generator
--- mit Kameras ---
Dies ist wahrscheinlich ein guter Ort, um uns ein wenig über den Einsatz von Kameras mit diesem Teilchen-System. Die Partikel sind in AE 's 3D-Raum, So dass Sie eine Kamera um die Teilchen wirklich ein Gefühl von Tiefe zu Ihrer Animation. Wenn Sie sich entschließen, eine bewegte Kamera, Sie haben ein paar nützliche Optionen. Wenn Sie nichts tun, außer Drehen der Kamera um den Sender, Schließlich wird es klar, dass die Teilchen selbst 2d. Dies kann der Effekt, den Sie sind nach, Vor allem, wenn Sie noch andere Elemente, die in 3D-Raum, die eindeutig 2D-Elemente. Die andere Möglichkeit ist, dass die Teilchen immer auf die Kamera. Sie tun dies durch die Layer-Menü: Layer transformieren Auto Orient "Orient in Richtung Kamera". Abhängig von der Partikel, Dies kann eine überzeugende Illusion, dass die Teilchen selbst sind 3D -. Experiment. Viel Spaß!
--- ein Wort über die Teilchen ---
Die Wirksamkeit dieser Simulationen hängt, Zum großen Teil, über die Qualität der Partikel Sie. Ich fordere Sie auf, die jene, die ich verwendet habe, in diesen Beispielen und versuchen Sie sich in Ihrer eigenen zu ersetzen und sie in einer der comps. Zum Beispiel, Versuchen, anstelle der Schneeflocken mit Herbstlaub. Oder einfach erfinden einige seltsame semi-transparent Blob und sehen, was es sieht aus wie in den Brunnen comp. Experiment. Viel Spaß! Auch um mit den verschiedenen Mischmodi. Beachten Sie, dass Sie auswählen können, alle Teilchen und dann, wenn Sie die Mischung von einem Modus, Alle anderen ändert sich auch.
--- eine abschließende Blick unter die Motorhaube ---
Gut, Die Sanftmütigen unter Ihnen steht es frei, lassen nun. Wie versprochen, Ich werde mir in die Physik der Teilchen-Bewegung Ausdruck ein wenig, bevor wir wickeln diese bis. Nehmen wir noch ein Blick in ein typisches Beispiel für die PoSITion Ausdruck wir verwendet haben (wir verwenden die von der "Moving-Sender 1" comp):
G = 100 / / Schwerkraft
W = 0; / / Wind
Wdir = 0; / / Wind-Richtung (0 = von links)
Vmin = 500; / / Mindest-AnfangsgeschWindigkeit
Vmax = 700 / / maximale AnfangsgeschWindigkeit
Amin = 0; / / Mindest-Start Winkel von vertikalen
Amax = 110 / / maximale Start Winkel von vertikalen
D = 4; / / cw-Wert
Geburt = Effekt ( "Leben").Param ( "point") [0];
Leben = Effekt ( "Leben").Param ( "point") [1];
Herkunft = this_comp.Schicht ( "null 1").PoSITion.Value_at_time (Geburt);
Alter = Zeitpunkt der Geburt;
Sehend_random (Geburt,True);
S = random (Vmin,Vmax); / / AnfangsgeschWindigkeit
V_e = this_comp.Schicht ( "null 1").PoSITion.Velocity_at_time (Geburt); / / Emitter-GeschWindigkeit
A = degrees_to_radians (random (amin,Amax)); / / Winkel von vertikalen
R = degrees_to_radians (Random (360)) / / Rotation um Y-Achse
X = s * Mathematik.Sin (a) * Mathematik.Cos (r);
Y =- s * Mathematik.Cos (a);
Z = s * Mathematik.Sin (a) * Mathematik.Sin (r);
Ich bin kein Experte für Partikelsysteme, Aber ich habe ein paar Beispiele für den Code für die Erzeugung von ihnen. Diejenigen, die ich je gesehen habe typischerweise tun inkrementelle Berechnungen auf der GrundlAlter von, wie viel die Dinge haben sich geändert seit der letzten Berechnung Zyklus. Eine Menge an Informationen über jedes Teilchen gespeichert und aktualisiert, für jeden Zyklus der Berechnung. In einem einfachen Beispiel, Die aktuelle PoSITion, Richtung, GeschWindigkeit, Farbe, Alter, Und die Lebensdauer der Partikel könnten gespeichert werden. Befasst sich mit der Berechnung dieser Werte, Sowie die aktuelle, die auf die Teilchen und berechnet, wo jeder sollte in der nächsten Zeit Inkrement.
Müssen wir die Dinge ein wenig anders After Effects. Wie Sie vielleicht wissen,, (vor allem, wenn Sie meine "generieren zufällige Motion "Tutorial) ist es nicht einfach, um Informationen aus einem Zyklus (Frame) der Berechnung auf die nächste. Variablen nicht überleben, von einem Frame zum nächsten. Wir haben also keine Möglichkeit, alle diese Informationen über den Zustand der Teilchen bei der letzten Frame. Wir brauchen einen anderen Plan. Wir tun, Jedoch, Haben ein paar nützliche Informationen zur Verfügung zu uns. Aus der Sicht Kontrolle, Wir haben die Teilchen die Geburt und das Leben Werte. Da haben wir Zugriff auf die aktuelle Zeit, Können wir berechnen, das Alter der Teilchen. Mit der folgenden Erklärung, Können wir bestimmen, wo im 3D-Raum Partikel wurde geboren:
Hinweis, dass "v_e" ist ein Vektor. Es hat eine Größe und eine Richtung, die die GeschWindigkeit der Emitter.
Die AnfangsgeschWindigkeit und starten Sie den Winkel der Partikel werden durch diese drei Anrufe mit der Zufallsfunktion:
S = random (Vmin,Vmax); / / AnfangsgeschWindigkeit
A = degrees_to_radians (random (amin,Amax)); / / Winkel von vertikalen
R = degrees_to_radians (Random (360)) / / Rotation um Y-Achse
, um sicherzustellen, dass wir immer die gleiche zufällige Werte während der gesamten Lebensdauer der Partikel, Dieser Anrufe an die Zufallsfunktion geht von den folgenden Aufruf an die "seed_random"-Funktion:
Sehend_random (Geburt,True);
Wir verwenden "seed_random", um den Samen der Zufallszahlengenerator auf die Zeit der Geburt des Teilchens. Diese Zahl wird die gleiche bleiben über das Leben der Teilchen, So werden wir stets in der LAlter sein die neu AnfangsgeschWindigkeit und Start-Winkel-Werte.
Bewaffnet mit diesen Informationen, Ein wenig Trigonometrie, Und ein wenig Vector Math, Wir sind bereit, um diese Sache. Wir planen die Berechnung der aktuellen Bedingungen auf die ursprünglichen Bedingungen und wie viel Zeit ist vergangen, seit der Partikel wurde geboren, Das sollte uns akzeptable Ergebnisse.
OK unsere erste Berechnung werden, um die GeschWindigkeit und den Start Winkel unserer Teilchen auf eine GeschWindigkeit Vektor. Wir tun dies, indem die einzelnen x, y, Und z-Komponenten des Vektors mit ein wenig Trigonometrie. Dies sind die AussAltern zur Berechnung x, y, Und z:
X = s * Mathematik.Sin (a) * Mathematik.Cos (r);
Y =- s * Mathematik.Cos (a);
Z = s * Mathematik.Sin (a) * Mathematik.Sin (r);
Sie haben mein Wort, um für diese. Ich habe versucht, eine nette Grafik zu zeigen, wie dies aus, Aber es muss gezeigt werden, im 3D-Raum und die Sache wird wirklich voll in Eile. Wenn Sie wissen, Trig, Sie können durch Muskel-und herauszufinden, was los ist. Immerhin, Jetzt sind wir bereit, den ersten Vektor-GeschWindigkeit mit dem Emitter des ersten GeschWindigkeit Vektor, um eine CompoSITe-GeschWindigkeit Vektor. Hier ist der Code:
V = [x,y,Z] + v_e;
Sehen, Vektor-Mathematik ist nicht zu gruselig (vor allem seit Adobe verändert sie mit 5.5 auf die Verwendung der regulären Mathematik Betreiber, "+" In diesem Fall).
Jetzt werden wir bei der Umsetzung dieser neuen GeschWindigkeit Vektor zu einer Größenordnung (GeschWindigkeit) und ein Einheitsvektor (ein Einheitsvektor ist ein Vektor der Länge 1):
New_speed = length (v);
Unit_v = normalize (v);
Was wir als nächstes zu tun ist, dass die Berechnung der Auswirkungen hat, ziehen Sie auf die Partikel über das Leben der Teilchen zu diesem Zeitpunkt. Dies ist wahrscheinlich der schwierigste Berechnung des gesamten Projekts. Es stellt sich heraus, dass das, was wir zu tun haben, ist die Wirkung der Klappe ziehen Sie in die Berechnung der Partikel-PoSITion an der aktuellen Frame. Wir haben die Größe und Richtung der Teilchen durch die Partikel der ersten GeschWindigkeit und die Sender der ursprünglichen GeschWindigkeit. Wir wissen, dass Luft Widerstand wird sich um die Verlangsamung der Teilchen nach, Welcher Weise die Teilchen in Bewegung ist. So, was wir zu tun haben, ist es (wie in Calculus - sorry!) Die Auswirkungen des Drag Kraft im Laufe der Zeit. Diese Ergebnisse in der folgenden Gleichung:
Das Ergebnis dieser Berechnung ( "delta_p") ist die aktuelle PoSITion des Teilchens, Wobei nur die ersten Teilchen-GeschWindigkeit, Emitter-GeschWindigkeit, Und die Wirkung von Drag. Ziehen Sie die Handlungen, die die GeschWindigkeit der Teilchen mit einer exponentiellen Rate.
Als nächstes brauchen wir für die Berechnung der Auswirkungen des Windes. Diese leichter. Aus der Physik wir nicht vergessen, dass
Distanz = GeschWindigkeit * Zeit
So zu berechnen, wie weit der Wind hat sich die Teilchen seit seiner Geburt, Benötigen wir nur, dies zu tun:
Delta_w = w * Alter;
Die Formel für die Wirkung der Schwerkraft ist ein wenig komplizierter,, Aber nicht zu viel. Gehen zurück zu unseren Physik, Wir erinnern uns, dass unser Abstand Partikel wird durch die Wirkung der Schwerkraft wird durch diese AussAlter:
Delta_g = g * Alter * Alter / 2;
Jetzt alles, was wir zu tun haben, ist die Kombination dieser Elemente. Wir haben alle Größen der Strecken, die von den Teilchen auf die verschiedenen Kräfte. Jetzt benötigen wir nur zu wandeln sie in die Vektoren in die gewünschte Richtung und fügen Sie sie, um die endgültige PoSITion Vektor. Wir wissen, dass die Schwerkraft wirkt in vertikaler Richtung. Wind wirkt in Richtung des Parameters "wdir". Die erste Komponente durch Teilchen-GeschWindigkeit, Emitter-GeschWindigkeit, Und ziehen Sie wirkt in Richtung der Einheitsvektor berechnet, dass wir vorher. So, hier ist der letzte Schritt, das alle Komponenten in die entsprechenden Richtungen:
Hier können Sie sehen, dass die Partikel beginnen Vektor ( "Herkunft") ist in Kombination mit der Entfernung verschoben wegen AnfangsgeschWindigkeit / ziehen (in Richtung der Einheitsvektor), Die Wirkung des Windes auf das "x" und "z" Koordinaten, Und die Wirkung der Schwerkraft in die "Y"-Richtung.
Gut, Und los geht's! Sind alle diese Formeln wirklich richtig? Ich weiß nicht,. Sie scheinen gut zu funktionieren genug, um eine nützliche Simulationen. Ich hoffe, Sie genießen das Spiel mit ihnen.
# # Dan ebberts
Fühlen Sie sich frei, um diese Technik in der After Effects Forum Hier auf creativecow.
Bitte besuchen Sie unsere Foren und um weitere Artikel auf creativecow.net Wenn Sie finden diese Seite aus eine direkte Verbindung.