Transkripte
1. Einführung: Hallo an alle. Mein Name ist schwerer, und das ist natürlich
fließendes Geräusch, das tiefer in das Reich der generativen Kunst eintaucht. Ich präsentiere mir einen glorreichen Algorithmus, der als Perlin-Rauschen bekannt ist. Lärm ist eine Funktion, die von vielen Journalisten,
Künstlern in einer Vielzahl von Formen umgesetzt wird. Wir werden jedoch in erster Linie auf Bewegung in
einem Strömungsfeld konzentrieren, indem wir zuerst die Rauschfunktion in der Verarbeitung verstehen, seine Werte
visualisieren gehen einige einfache Animation wie ein oszillierender Kreis und geglättete randomisierte Rotationen, , die dazu beitragen wird,
flüssige Animationen in statischen Kunstwerken wie diesem zu erzeugen , kann
die Formel
zahlreiche Ergebnisse präsentieren , indem sie einige Parameter wie Maßstäbe, Schrittgröße oder sogar die verwendete Geometrie anpassen . Also werde ich Sie durch jeden in der Hoffnung, Ihnen zu helfen zu verstehen, wie Lärm funktioniert und letztendlich Ihren Fluss erreichen geht. Also lasst uns in die Lektionen einsteigen und anfangen zu lernen.
2. Was ist Raums?: Sowohl die Rausch- als auch die zufällige Funktion erzeugen zufällige Werte. Nur Lärm ist organischer als zufällig da Rauschwerte durch ihre benachbarten Werte beeinflusst werden, wodurch eine glatte Flüssigkeitsbewegung entsteht, die in der Natur wie Wolken,
Haare und Wasserströme auftreten . Syntaktisch benötigt die Rauschfunktion entweder 12 oder drei Argumente, aber die resultierenden Werte liegen immer zwischen 01. Wird in der nächsten Lektion ein paar Beispiele sehen um die Rauschfunktionen nach außen zu visualisieren.
3. Beispiel: Was ist Raums?: Okay, bevor wir in das fortgeschrittenere Zeug kommen, möchte
ich es erklären oder du willst dir zeigen, wie wir die Rauschfunktion benutzen werden. Jetzt erzeugt die Rauschfunktion nur Werte von 0 bis eins, unabhängig davon, welche Werte Sie in sie einfügen. Es unterscheidet sich sehr von der Zufallsfunktion, bei der Sie einen Minimalwert und einen Maximalwert eingeben und Werte sind schwebende Werte zwischen diesen Zahlen. Aber für Rauschen, egal wie groß die Werte, die Sie darin setzen, wird
es immer einen Wert von 0 zu eins erzeugen. Wir müssen also skalieren, aber gleichzeitig müssen
wir auch darauf hineinzoomen. Wir wollen also nur einen Teil dieser Welle
dieser Geräuschwerte, weil wir eine sehr glatte, flüssige Bewegung wollen, weil sie uns eine sehr starre Bewegung geben wird. Wenn wir nicht auf einen Teil davon zoomen, werde
ich Ihnen zunächst das Beispiel mit der Sinuswelle zeigen. Und dann schauen wir uns das Beispiel mit der Rauschfunktion an, weil eine Sinuswelle
viel einfacher zu visualisieren ist , weil sie sehr einheitlich ist. Wenn die nette Funktion etwas schwieriger
zu entziffern ist , ob es Änderungen gab oder nicht, oder ob wir immer noch die gleiche Welle verwenden oder nicht. Okay, lasst uns zuerst anfangen, indem wir die Welle erzeugen. Also werde ich einen X- und Y-Punkt brauchen. Und dann innerhalb der Setup-Funktion werde
ich die Welle zeichnen. Die Welle wird von 0 zu Breite gehen, und dann wird es in der Mitte oder in der Mitte der Leinwand sein. Höhe weise für das x wird von 0 auf die Breite gehen. Aber dann für die y-Werte werde
ich die Sinusfunktion verwenden. Und dann gebe ich darin die x-Werte ein. Und ich werde einen Scheitelpunkt auf x und y zeichnen und ich werde auch y initialisieren, Höhe geteilt durch zwei. Wir müssen Formen beginnen und für jeden Scheitelpunkt mit dem anderen verbinden. Und jetzt haben wir eine sehr, sehr kleine Sinuswelle. Jetzt, um es zu skalieren, werden
wir es mit einer Höhe multiplizieren. Denn wenn ich es um eins skalieren will um ihm eine Amplitude zu geben, die die Höhe der Welle ist. Also sagen wir, ich möchte ihm eine Höhe von zehn geben. Jetzt fangen wir an, die Welle tatsächlich zu sehen. Lasst uns sogar noch höher gehen. Also werde ich eine 100 machen. Und Sie können sehen, dass die Welle fast keine Breite hat, sie ist sehr schmal. Um das zu tun, müssen
wir irgendwie hineinzoomen. Deshalb nennen sie es die Waage und Zeiten. Ich werde es hier Breite nennen, weil es die Breite der Welle ist. Um also die Breite jeder Welle zu skalieren, werde
ich den x-Wert hier durch 1000 teilen. So sehen wir bereits, dass es viel größer ist, weil wir die Breite der Welle erhöht haben. Und lassen Sie uns das stattdessen auf zehn reduzieren. Jetzt fangen wir an, die Welle besser zu sehen. Also jetzt, da wir wissen, dass wir obwohl Wellenbreite und die Wellenhöhe haben, werde
ich hier zwei weitere Werte hinzufügen. Ein Kult w, für den ich ihm einen Wert von zehn geben werde. Und dann werde ich das so genannte Kantenschalter Höhe machen. Und ich werde ihm einen Wert von zwei geben, weil ich das vorher getestet habe. Also werde ich das mit Breite und Höhe ändern. Okay, jetzt wissen wir, dass wir eine Sinuswelle mit einer Breite von zehn und einer Höhe von zwei haben. Jetzt, um dies in der Mitte zu machen, direkt in der Mitte, werde
ich die Breite multipliziert mit der Höhe von warum subtrahieren. Dies ist nicht unbedingt wichtig, aber ich lege meine Welle gerne in die Mitte und es ist viel einfacher für Sie zu visualisieren, wie sich die Welle ändert, wenn wir die Werte ändern. Jetzt können wir sehen, dass es in der Mitte ist und jetzt die Werte tatsächlich korrekt sind. Und ich sehe die Höhe von zwei oder eine Welle mit einer Höhe von zwei und einer Breite von zehn. Und wenn wir das jemals ändern wollen, sagen wir 200, das ist die Breite auf 100, Sie können sehen, dass es viel größer ist, weil die Breite jetzt viel höher ist. Und dann, wenn ich es tue, sagen
wir 15, jetzt ist es zwei Welle. Und wenn wir fünf machen, ist es viel kleiner. Also ja, es hängt davon ab, wie du es machen willst. Also der Punkt, um hier wegzunehmen ist, dass die Breite oder was auch immer Wert, den Sie hier setzen Fähigkeiten auf der Welle. Wenn wir also 40 setzen, dann skalieren wir die Welle. Ich mag es als Zoomen in die Welle zu betrachten. Und je größer dieser Wert ist, wo die Höhe als die steileren Wellen werden. Wenn wir also einen Kreis auf dieser Welle bewegen würden, und wir können es jetzt tun, damit Sie es sehen können. Aber bevor wir das tun können, werde
ich diese Welle in den Wertschätzungskurs retten. Denn dann können wir einfach die Form einmal innerhalb der Zeichenfunktion zeichnen. So können Sie die for-Schleife verwenden, um den Kreis auf der Welle zu verschieben und eine Stückform zu erstellen. Es ist sehr einfach. Sie erstellen einfach die Klasse P Form und dann nennen Sie es, was Sie wollen. Und dann hier oder in der Setup-Funktion initialisieren
Sie es mit sauberer Form. Und dann verwenden Sie Welle oder die Methoden innerhalb
der PCA-Klasse, anstatt nur begann
Form zu verwenden , die direkt innerhalb der Verarbeitung verwendet wird. Und dann auch hier winken
Sie und verwenden stattdessen den Scheitelpunkt innerhalb der T-förmigen Klasse. Und jetzt haben Sie die Form, die nur angezeigt wird, wenn er die Shape-Funktion verwendet hat. Auf diese Weise können wir es hier benutzen. Also werde ich einfach zurückziehen, weil wir nicht wollen, dass es zeichnet, wir wollen, dass eine Animation gemacht hat. Und dann rufe ich die Welle an. Innerhalb der Form Funktion hier drüben. Und jetzt können wir sehen, wie es hier erscheint. Wenn ich den Hintergrund entferne, wird
es aufstellen, ob er sehr klobig sein wird. Und auch Sie wollen den Kreis bewegen und wir wollen nicht, dass er zeichnet. Okay, jetzt können wir
den Kreis an der gleichen Stelle wie der Scheitelpunkt zeichnen. Und ich werde die Kreisbreite von zehn geben. Und dann hier drin, wie wir es hier taten, haben wir x um eins erhöht. Ich werde auch x um eins erhöhen. Und dann werde ich y i erhöhen, die Sinuswelle, geteilt durch, die x geteilt durch die Breite, um hinein zu zoomen und es viel größer zu machen. So ist die Bewegung viel glatter. Und dann multiplizieren wir es mit einem Versteck, also gib ihm Kraft, denn jetzt wird es steiler. Je mehr, desto größer die Zahl ist es immer steiler und die
Hardware für den Kreis länger Fred der Kreis nach oben und unten zu gehen. Und jetzt werde ich auch tun, wenn x größer als die Breite ist. Und ich wollte zurück zu 0 gehen, weil ich möchte, dass sich der Kreis bewegt. Und dann, wenn es aus dem Bildschirm kommt und hier zurück geht. Jetzt kann ich sehen, wie sich der Kreis tatsächlich durch
die Welle bewegt , und Sie können sehen, wie die Bewegung sehr glatt ist. Jetzt. Je höher dies ist, die Höhe ist die Stärke oder die Steilheit dieser Wellen. Je schneller sich die Kreise bewegen, weil sie all dies und die gleiche Zeit oder in der gleichen Frame, Bildrate
erreichen müssen . Gehen wir nun zu den Geräuschbeispielen über, da das ist, was wir verwenden werden. Es gibt also ein paar Dinge, die ich ändern werde weil wir keine Breite und Höhe verwenden werden, die normalerweise
nur mit der Sinusfunktion verwendet werden weil es sehr offensichtlich ist, wo die Breite ist und die Höhe ist. Aber für das Rauschen werde
ich die Breite ändern, um zu skalieren, weil es vergrößert und vergrößert das Aussehen der Welle. Und dann werde ich die Höhe als Stärke bezeichnen. Denn je höher es ist, desto mehr kommen Sie aus dem heraus, was Sie mit der Rauschfunktion verwenden, die wir es mit Winkel verwenden werden. Je höher die Feder ist, desto höher die Rotation oder desto mehr Rotation werden Sie erhalten. Und dann werde ich jede Breite ändern, um zu skalieren. Eigentlich gewöhnen Sie sich nicht. Dieser Teil. Wir werden es hier anders machen. Und Stärke für die Höhe. Und auch hier, um etwas anderes zu tun. Und dann wird dies auch Maßstab in Öfen gehen zu E-Strings. Ok, sagen wir, es hat das in Rauschen geändert. Also, was auch immer Wert aus Aaron kommt, wird von 0 zu eins sein und mit der Stärke multipliziert, es wird es größer machen. Also wird es ihm mehr Kraft geben. Und ich werde es nicht hinzufügen, Rauschfunktion funktioniert ein wenig anders. Und wir müssen es auch hier ändern. Aber wir werden alles andere gleich lassen. Und wir beginnen Höhe auf der Wyatt Höhe geteilt durch zwei. Aber dann müssen wir das auch nach unten verschieben. Also plus. Aber lassen Sie uns sehen, wie es jetzt aussieht und dann später ändern. Okay, also der Grund, warum ich es nach unten geschoben, also sagte ich y plus Höhe geteilt durch zwei. Es liegt daran, dass es hier oben in der Nähe der 0 geht. Also werde ich es einfach verschieben, indem Höhe durch zwei geteilt wird hier und dann das gleiche hier drüben. Also schiebe ich es hier runter, denn jetzt ist die Stärke nur zehn. Und so wird es uns einen Wert von 0 bis zehn geben. Wie Sie sehen können, ist die Welle sehr klobig. Und die Art und Weise, wie wir dies verbessern oder tatsächlich in
eines dieser Stücke schauen können , ist, indem wir die Skala anpassen. So können Sie sehr große Geschicklichkeitszahlen benötigen, um sehr reibungslose Bewegungen zu erhalten. Also, wenn ich eine 100 gehe, können
Sie sehen, dass es viel glatter und heraus, aber dann gibt es keine Rotation oder es gibt eine Menge Höhe in diese Welle. Also werde ich das auch erhöhen. Und wie Sie sehen können, fangen wir an, ein paar schöne Formen oder schöne fließende Bewegung zu bekommen. Und wenn ich noch höher für die Rotation gehe, dann würde ich hügelartige Bewegungen bekommen. Und das kann sehr schöne Ergebnisse liefern, wenn wir es
dem Winkel oder der Art, wie sich die Formen drehen, hinzufügen . Und das ist es, was wir in der bevorstehenden Prüfung verwenden werden. Auch, wir verwenden hier ist ein eindimensionales Geräusch. Wir verwenden also nur ein Argument innerhalb der Rauschfunktion wenn Sie tatsächlich ein zweidimensionales Rauschen verwenden können, jedes dreidimensionale Rauschen. Und ja, ich werde es jetzt nicht vorstellen. Das wird ein eigenes Kapitel haben. Aber im Moment müssen Sie nur wissen, dass die Skala in die Welle zoomt, so dass Sie sehen können, so dass Sie es besser sehen können, hat mehr Flüssigkeit Bewegung, weil wir jetzt von 0 auf
die Breite bewegen , indem wir nur einen Teil der Welle verwenden. Als, vorher, als es nur zehn war, haben wir tatsächlich viel mehr durchgemacht. Und dann gibt dir die Stärke mehr Höhe. Jetzt können wir die NOI-Seed-Funktion verwenden, um ihm immer und immer wieder
die gleiche Form zu geben , damit wir sehen können, wie sich die Dinge tatsächlich bewegen. Also, wenn ich das tue, gebe ich ihm einfach eine 0. Du kannst ihm geben, welche Nummer du auch immer hast. Jedes Mal, wenn ich es jetzt führe, werden
wir genau die gleiche Welle haben. Ich möchte, dass du dich auf den ersten Bereich der Welle konzentrierst. Und ich werde das nur ein bisschen erhöhen. Wie Sie sehen können, ist es die gleiche exakt aussehende Art und Weise, aber es wird ein bisschen größer, weil wir näher dran sind. Also ist es tatsächlich diesen Teil der Welle zu bekommen, desto größer ist diese Zahl. Wenn du also 30 gehst, wirst du sehen,
dass das hier größer wird. Und wie Sie sehen können, ist es genau die gleiche Art, aber es wird größer. Und wenn ich 50 gehe, dann ist es genau die gleiche Welle. Lass uns noch höher gehen und dir eine 100 besorgen. Und Sie können sehen, dass es genau die gleiche Bewegung ist, aber es ist viel größer, weil wir es skalieren. Und wenn wir die Stärke erhöhen, werden
Sie sehen, dass die Spitzen
höher werden und die unteren Teile niedriger werden. Also wird dieser Teil tatsächlich aus dem Bildschirm gehen. Also, wenn ich gehe, sagen wir 400. Und Sie können sehen, dass es genau die gleichen Wege ist, aber jetzt geht es hier rüber und höher hier drüben. Wenn du dadurch verwirrt wirst, mach dir keine Sorgen. Es ist die gleiche genaue Formel, die Sie nur mit der Fähigkeit und der Stärke spielen. Und wir werden nicht so viel ändern, selbst in der zweidimensionalen Rauschfunktion. Und in der dreidimensionalen Nervs-Funktion wird
es nur genau das gleiche sein, nur einen y-Wert oder Z-Wert hinzuzufügen. Und das werden wir im kommenden Kapitel sehen. Und für jetzt konzentrieren Sie sich auf welche Fähigkeiten und Stärke aufgrund der Lärmwelle.
4. Flussfeld: Bevor wir mit dem Erstellen von Kunstwerken mit Rauschen beginnen können, möchte
ich Ihnen zeigen, wie ein Fließfeld aussieht, denn das ist im Grunde die Grundlage für alles, was wir erschaffen werden. Im vorherigen Abschnitt erwähnte
ich, dass wir Rauschen für Bewegungswinkel verwenden werden. sich die Formen also über den Bildschirm bewegen, können Sie entweder die Richtung der Canvas-Grenzen, aber dann den Winkel hinzufügen oder dem Winkel Rauschen hinzufügen. Eigenschaft von jedem dieser Faktoren sind, ist
jeder dieser Mittel tatsächlich die flüssige Bewegung zu schaffen. Ich werde nur ein einfaches Raster erstellen und Ihnen dann zeigen, wie die Winkel tatsächlich über den Bildschirm bewegen, indem Sie die Rauschfunktion verwenden. Wir werden anfangen, indem wir nur einen normalen Vektor verwenden und dann
werden wir die Rauschfunktion integrieren, um zu sehen, wie sich die Winkel ändern. Creed Flüssigkeit Bewegung über den Bildschirm. Um zu beginnen, werde ich meine Datei speichern, weil ich importieren möchte oder Sie
die RL darin speichern möchten , indem Sie eine Bande erstellen, um das einfach in meinem Desktop zu speichern, werde
ich es Flussfeld nennen. Und dann innerhalb dieser Datei werde
ich eine Datendatei erstellen und so importieren Sie Bilder oder Formen Ihres Projekts. Also werde ich meine SVG-Datei kopieren und in den Zustand älterer einfügen. Und ich nannte es nur den Pfeil. Und es ist ein sehr einfacher Pfeil, den ich in Illustrator erstellt und als SVG gespeichert habe. Ich werde dies im Ressourcenbereich verknüpfen. So kannst du mir folgen. Jetzt, um das Flussfeld zu erstellen, werde
ich eine Klasse namens Flussfeld erstellen. Innerhalb des Flussfeldes brauche ich einen p-Vektor. Ein b-Vektor ist hier einfacher zu verwenden, da er bereits einen Winkel hat. Aber in den kommenden Kapiteln werden nicht einen Schlüsselfaktor verwenden. Ich werde nur eine malerische und eine X- und Y-Position verwenden. Aber da ich ein Raster erstellen möchte und die Positionen jedes Vektors
speichern möchte. Ich werde es einfach so machen. Und ich werde dieses Feld anrufen. Daher ist die Mehrheit dieses Codes der Art des Codes sehr ähnlich. Es ist nur die Art und Weise, wie ich das Gitter erstelle, ist ein bisschen anders. Und ich denke meiner Meinung nach, viel einfacher zu verstehen, nur weil wir uns auf die Art und Weise konzentrieren, wie wir ein Stipendium im wirklichen Leben schaffen. Anstatt sich auf die Auflösung
der Noten zu konzentrieren und vielleicht ein wenig rückwärts zu denken. Also werde ich nur Spalten oder Zeilen verwenden, weil es viel einfacher für mich zu erklären ist. Es ist viel einfacher für mich, auch zu verstehen, wenn ich es durchmache. Ich werde nur Spalten und Zeilen für die Anzahl der Spalten und Zeilen tun. Und dann werde ich auch Spaltenbreite
und -höhe verwenden , um die Breite und Höhe jeder Zelle innerhalb dieser Körnung zu berechnen. Und dann innerhalb des Konstruktors dieser Klasse. Ich gebe. Er Parameter, was Spalten und die Zeilen genannt werden. Weil ich möchte, dass die Anzahl der Spalten und Zeilen innerhalb unserer Klasse entschieden wird oder das Programm hier drüben bedeutet. Und dann werden diese Spalten gleich sein. Der erste Parameter sind Unterstriche Spalten und Zeilen. Und übrigens, Sie können das nennen, was Sie wollen. Und dann Spaltenbreite. Eigentlich werde ich das Silhouetten und Scala nennen. Und dann, da es viel einfacher zu verstehen ist, dass es Höhe und Breite klingt. Und das wird die Breite unserer Leinwand durch die Anzahl der Spalten geteilt sein. Und dann verkaufen Höhe, junge TV, die Höhe geteilt durch die Reihen. Und dann weiter Feldvektor. Wir werden ein neues Vektorarray mit der Anzahl der Spalten und dann die Anzahl der Zeilen erstellen. Das ist also ein zweidimensionales Array. Und dann werde ich hier eine inet-Funktion erstellen. Um unser Raster zu initialisieren. Sie verwenden nur eine einfache for-Schleifenverstärkung von 0 zu den Spalten und dann verschachtelte for-Schleife, um die Zeilen zu erstellen. Das wird also die Spalten sein. Ich ist weniger als Anzahl von Spalten. Und zuletzt werden wir es hier nennen. Weil ich es nur eine innerhalb der Setup-Funktion hier drüben initialisieren möchte. Und dann werden wir hier drüben versuchen, können jetzt unseren Pfeil positionieren. Wir kommen zu diesen Positionen. Und um die Positionen zu erstellen, erhalte ich nur eine x-Position, y-Position. Und für die Exposition, die Werte werden ich multipliziert mit der Zelle. Jede Augenposition,
jeder Augenpunkt bedeutet also multiplizierte Beta-Zelle mit. Also wird der erste 0 multipliziertes Benzoat sein, also wird das 0 sein. Und dann das zweite Quadrat, die zweite Zelle wird eine mit n Zelle multipliziert sein mit, also was auch immer die Silhouetten sind oder wenn Sie eine Silhouette eines 100 basierend auf der Anzahl der Spalten und Zeilen haben, dann haben Sie eine Position von x bei einer 100 und so weiter und so weiter. Das gleiche gilt für j zu diesem Zeitpunkt ist Zellenhöhe. Und dann werde ich hier einen P-Vektor erstellen, einen lokalen p-Vektor. Und ich werde ihm eine Position 00 geben, wieder, nur um zu sehen, wie es aussehen wird. Und dann werde ich diese Position speichern, wo dieser p-Vektor innerhalb
unseres Feldes Vektorarray bei i, j für die Zeilen an Punkten i. Und dann an Punkt j, werden wir ihm den Wert des Vektors hier geben. Also wird das im Grunde für die erste gehen. Und dann wird es jede Zeile in unserem Gitter durchlaufen. Und es wird jedem Punkt oder jeder Zelle die Position geben, mit diesem Vektor hier drin, ein sehr einfaches Raster. Und ich werde Ihnen später zeigen, wo wir die Axiom-Positionen hier einsetzen werden. Jetzt haben wir es gerade initialisiert. Lassen Sie uns zeigen. Also werde ich eine Anzeigemethoden erstellen. Und hier drin werde ich einfach dasselbe für Schleife machen. Und jetzt werde ich zeichnen, was wir wollen. Hier. Es wird die Pfeilform sein, die die Positionen verwendet, die wir gerade erstellt haben. Ich werde eine Push-Matrix verwenden. Und ich habe darüber in meinem Rücken zum Basics-Kurs gesprochen. Wenn Sie mehr über Push-Matrix und Pop-Matrix wissen möchten. Aber ich werde dir kurz erzählen, was sie tun. Also im Grunde Push-Matrix und Pop-Matrix erstellt eine andere Ebene oder eine andere Matrix im Grunde für jede Form. Anstatt die Formen selbst zu verschieben, werde
ich einfach die gesamte Ebene verschieben. Also werde ich eine Ebene für die erste Zelle im Raster erstellen. Und ich werde es in diesem Bereich positionieren, wo ich die erste Zelle
TB will und dann werde ich eine andere Matrix schieben, sind eine andere Schicht. Und ich werde die ganze Schicht neben oder an die Position der zweiten Zelle schieben. Und dann machen wir dasselbe für den Rest der Körnung, weil wir die for-Schleife verwenden. So wird es uns leichter machen, an der 00 Position jeder Schicht zu positionieren oder zu formen. Außerdem müssen Sie Push-Matrix und Pop-Matrix verwenden, denn wenn Sie jemals übersetzen, drehen und skalieren außerhalb der Push-Matrix und Pop-Matrix verwenden, wird das gleiche ausführen. Sagen wir Übersetzung. Wenn wir Translate verwenden, um die
Shapes zu verschieben , wird es dieselbe Übersetzung auf derselben Ebene verwenden. So wird es sich bewegen, bis es sich aus dem Bildschirm bewegt. Weil es die Position 00 der Leinwand verschieben wird, d. h. die obere linke Ecke nach rechts und dann nach unten basierend auf der Position der Zellen, bis sie zur letzten Zelle bewegt wird. Es wird also derselbe sein. Aber wenn wir Push-Matrix und Pop-Matrix verwenden, dann erstellen wir eine andere Ebene und dann verschieben wir diese Ebene an die neue Position. Es wird also die erste auf 00 der ganzen Leinwand verschieben. Und dann wird es die zweite Ebene zwei verschieben, die zweite Position, die 0 sein wird. Und dann die Zellenbreite und bewegen sich über die Spalten und dann über die Zeilen. Jetzt kann ich Translate sicher verwenden,
da ich weiß, dass es diese Übersetzung nur auf dieser Ebene durchführen wird. Also werde ich dasselbe tun, wie wir hier drüben getan haben. Und ich werde nicht verwenden, wann immer die Position, die ich nicht hier habe, nur weil ich Ihnen ein paar Dinge zeigen möchte, bevor ich die x- und y-Position verwende. Also wird das für uns kaputt machen. Also werde ich einfach tun, ich multipliziert mit Zelle mit in Drain, multiplizieren Sie es mit Zellenhöhe. Und dann zum Drehen, werde
ich Vektor ist Überschrift. Was im Grunde der Winkel im Bogenmaß ist. Also Überschrift sagt Ihnen im Grunde, wohin der Vektor geht. Das ist so ziemlich es. Um also die Rotation jedes Vektors zu erhalten oder wohin es
geht, werde ich einfach INJ verwenden, um jeden Vektor zu erhalten. Und dann werde ich die Überschriftenmethode verwenden. Und Sie können das ausdrucken, wenn er die Werte davon sehen will. Also werde ich die Form auch auf fünfundzwanzig Prozent
ihrer ursprünglichen Größe skalieren , weil es wirklich groß ist Auge, wie geht es mir bei 100 mal 100? Und da meine Leinwand klein ist, 500 mal 500, ist
es ziemlich viel besser, sie auf 25% zu skalieren. Und dann werde ich die Formen zeichnen. Die Form heißt also Pfeil. Ich habe es nicht wirklich erschaffen. Also werde ich hier einen Eierstock mit Schlüssel erstellen. Ich werde es nennen. Und dann hier drin werde ich es mit Lastform importieren. Es heißt Arrow Dot SVG. Und dann werde ich auch Skype deaktivieren. Das musst du nicht. Ich mache es gerne zur Gewohnheit,
den Stil meiner SVGs zu deaktivieren , nur für den Fall, dass ich die Farbe später ändern möchte. Ich verwirre mich nicht, warum es sich nicht ändert. Also jetzt, da wir die Stile deaktiviert haben, kann
ich tatsächlich das Strichgewicht zu I im Grunde
Dustin alle von denen ändern , so dass Sie sich keine Sorgen darüber machen müssen, genau zu folgen. Sie können mit dem Strichgewicht und Farben und all das spielen. Und dann werde ich die Schleife in der Zeichenfunktion stoppen , weil Sie nur
das Raster zeichnen und Ihnen zeigen möchten, wie es aussieht. Okay, jetzt kann ich die Form hier drüben zeichnen. Es sieht, dass es ein Pfeil ist, aber es braucht eine Position für die Form. Ich werde nur 00 für
jetzt tun und wir werden sehen, wie man das später beheben kann, wenn Sie irgendwelche Probleme sehen. Das ist also so ziemlich es. Bevor wir den Grant erstellen,
haben wir kurz die Positionen jedes Vektors initialisiert und dann angezeigt. Also lasst uns sehen, wie es aussieht. Lassen Sie uns ein Fließfeld aus der Klasse erstellen. Das ist also unsere Instanz und nenne es einfach Flussfeld. Und dann werde ich es hier initialisieren. So zum Beispiel das Fließfeld. Und wir geben ihm die Anzahl der Spalten und Zeilen. Ich werde dieses Array hier einfach initialisieren. Spalten sind also gleich 20. Und dann für Reihen, und ich werde schütteln und ihm 20 geben, da wir ein Quadrat haben. Und lassen Sie mich das reparieren. Und jetzt innerhalb der Zeichenfunktion werde
ich nur Fließfeld-Punkt-Anzeige machen. Und es sollte jetzt funktionieren. Ok, wir müssen keine der Formen reparieren. Sieht gut aus. Sehen wir uns nun an, wie wir die Richtung dieser Pfeile ändern können. Also für 00 geht es nach rechts. Und dann auch von einem für X und 0 für y, es wird sich auch nach rechts bewegen, weil wir es nur bewegen. Oder es ist irgendwie wie mit einer Geschwindigkeit von eins auf der rechten Seite. Und dann, wenn ich will, dass es nach unten schaut, sage
ich „y one“. Und Sie werden sehen, dass sich alle Pfeile tatsächlich nach unten bewegen. Und jetzt, wenn ich will, dass es sich diagonal um 45 Grad nach rechts und unten bewegt. Ich schreibe nur einen für X und jetzt bewegt es sich in einem 45-Grad-Winkel. Und jetzt, wenn ich in die entgegengesetzte Richtung gehen wollte, auf der Y-Achse, mache ich einfach negative. So ist es im Grunde wie eine Bewegung jede Form über den Bildschirm basierend auf seiner Geschwindigkeit. Also, wenn du x plus eins gesagt hast, dann wissen wir, dass es sich nach rechts bewegen und y minus eins sagen wird, das geht nach oben. Also, wenn ich das auch nach links nehmen möchte, was die entgegengesetzte Richtung oder das Gegenteil der Standardrichtung ist. Es ist negativ. Und wenn ich das bei 0 mache, wirst
du sehen, dass es direkt nach links geht. Wenn wir dies in x und y ändern, können
wir verschiedene Rotationen für jeden Vektor basierend auf seiner Position sehen. So können Sie sehen, wie wir uns auf die Rate bewegen, die meisten von ihnen schauen nach rechts und dann, wenn wir nach unten gehen, geht es nach unten. Und dann diagonal geht es tatsächlich diagonal, weil dann
die Position von x und y tatsächlich gleich oder fast gleich sind. Und so richten sie in einen 45-Grad-Winkel. Und wenn ich negative X mache, dann kehren wir eigentlich alles von der rechten Seite auf die linke Seite um. Und dann dasselbe für y und wir werden auch eine andere Rotation bekommen. Also wird es nach oben gehen. Also, jetzt, wo wir das verstehen, wollen wir tatsächlich die Rauschfunktion verwenden. Das heißt, bevor es vorher war. Tun Sie etwas davon, lassen Sie mich diese Übersetzungsprobleme beheben. Wie Sie sehen können, befindet sich die gesamte Leinwand oder die größere Leinwand, in der wir unser Flussfeld
anzeigen, am Nullpunkt in ihnen. Hier drüben gibt es Lücken. Also werde ich es einfach um 12.5 nach rechts bewegen und dann nach unten 12.5. Der Grund, warum ich das tue, denn jeder Pfeil ist eigentlich ein, ein 100 Pixel um 100 Pixel. Und dann skalieren sie bis Mai 25% von jedem von ihnen 12,5, weil 25% einer 100 wird 25 Pixel von 25 Pixel für jeden Pfeil treffen. Und dann halb so Gott ist 12,5. Und ich möchte mich nur um die Hälfte bewegen, weil ich jeden Pfeil in
die Mitte der Zelle bewegen möchte , anstatt in der oberen linken Ecke jeder Zelle. Und ich werde das auch beheben, denn jetzt trockne ich an der 00 Position von jedem. Aber da ich die gesamte Leinwand nach rechts und unten verschiebe, muss
ich jede Form um die Hälfte ihrer Breite nach oben bewegen, nach links um die Hälfte ihrer Breite. So können wir das tun, indem wir die Breite der Formen verwenden. Also, wenn ich negative Pfeilpunktbreite durch zwei geteilt mache, so und bewegt sich auf der linken Seite um die Hälfte seiner Breite. Und dann gehe ich nach oben. Ich habe das noch nie ausgeführt. Es sollte perfekt aussehen. Und so statt x und y zu verwenden, jetzt funktioniert Willies Rauschen für den Winkel und dann werde ich die Positionierung des P-Vektors cosinus und sinen. Weil ich diesen Winkel oder Theta nennen werde, wie immer du es nennen willst. Und ich werde die Werte abbilden. Lärm, wie er bereits sagte, Lärm. Unabhängig von den Werten, die Sie in Rauschen setzen, es wird immer eine 0 oder einen Wert von 0 zu eins erzeugen. Und wir wollen das von 0 bis 10 auf zwei Pi für Winkel abbilden. Im vorherigen Beispiel haben wir die Werte innerhalb der Rauschfunktion durch die Skala geteilt, und dann multiplizierten wir die gesamte Noyce-Funktion mit Stärke. Der einzige Unterschied hier ist, dass wir nicht mit seinen Stärken multiplizieren werden, aber wir werden nur die Werte abbilden, die von der Rauschfunktion erzeugt werden, die von 0 zu eins ist, um von 0 bis zwei pi und das Zeichen zu bewerten, die minimalen und maximalen Werte von Winkeln im Bogenmaß. Also werde ich einfach die Rauschfunktion verwenden, wie wir es vorher getan haben. Ich werde nur x durch Rauschskala geteilt machen. Und dann werde ich diesen Wert von 0 zu eins abbilden, was die ursprünglichen Werte sind, die aus der Rauschfunktion kommen. Auf 0 bis zwei pi, was ein voller Kreis ist. Und dann werde ich hier die Geräuschskala initialisieren. Ich werde es nur 300 machen. Und jetzt werde ich den Winkel hier benutzen. Also für x werde ich Kosinuswinkel verwenden. Und dann für y werde ich Sinus des Winkels verwenden. Und wenn ich das jetzt führe, werden
wir eine fließende Bewegung sehen. Es ist nicht so offensichtlich, weil es eine eindimensionale Rauschfunktion ist. Also werde ich kurz die zweidimensionale Rauschfunktion vorstellen. Das einzige, was Sie ändern werden, ist, weitere Argumente dafür hinzuzufügen, warum. Und wir werden es auch durch die Lärmskala teilen. Wenn wir das ausführen, werden wir feststellen, dass die Bewegung
flüssiger ist , weil es ein zweidimensionales Array ist. Und wie Sie sehen können, bewegt sich alles hier nach unten und dann beginnt es sich basierend auf den Rauschfunktionen
zu drehen. Wenn Sie also die Rauschskala ändern, also sagen wir es 100 machen, sehen
Sie mehr Rotationen. Und dann desto höher ist es, werden Sie weniger Rotationen sehen denn wie wir im vorherigen Beispiel gesehen haben, wenn wir über Skalierung von Rauschen oder Skalierung Rauschwelle gesprochen. Wenn die Skala zunimmt, werden
die Wellen tatsächlich glatter, weil wir
in einen Teil oder die linke Seite der Welle zoomen . So wird die Bewegung oder der Kreis verwendet, um langsamer zu bewegen Geschwindigkeit bewegt sich durch den ersten Teil der Welle statt zu bewegen Schraube mehr Hügel und unteren Teile der Welle. Also eine Hunderte Bande, um mehr Winkel zu produzieren. Und je höher wir gehen, wird
es glatter und Bewegungen sein. Wie Sie sehen können, sind die Winkel tatsächlich glatter. Und weil wir keine lästigen Samen haben, verwenden Sie jedes Mal verschiedene Werte. Wenn Sie also zurück zu 300 gehen, können
wir anfangen, verschiedene Winkel zu sehen. Wenn Sie eine Purine oben auf diese setzen, und dann folgen Sie dem Winkel jedes dieser Pfeile. Sie werden feststellen, dass sich Kreise tatsächlich mit
dem Winkel oder in die Richtung der Pfeile bewegen . Das allein kann schöne Kunstwerke schaffen. Wenn Sie mit der Form spielen, die Sie verwenden, können
Sie beliebige SVG-Dateien oder
irgendein Programm erstellen , das SVGs produzieren kann, in das er importieren kann. Und spielen Sie mit der Welle, die dadurch entsteht. Und spielen Sie auch mit der Anzahl der Spalten und Zeilen herum. Denn je höher der Wert für diese, du wirst die Wege besser sehen, denn dann wirst du die Formen nicht so viel sehen, aber du wirst mehr von den Bewegungen oder einer Welle sehen. Wenn Sie
zum Beispiel eine Zeile erstellen, werden Sie die Welle besser sehen, der Pfeil, den Daniel Schuhe, wenn Benutzer in der Natur von Codebeispielen ist viel einfacher, die Welle durch zu sehen, weil es, es ist nur eine Linie. Es ist kein Pfeil, der so aussieht. Sie können den Bereich selbst erstellen oder Sie können es
in den Ressourcen für die Art des Codebuchs finden . Sie können den gesamten Code in GetHub Abschnitt finden. So können Sie das auch studieren, weil ich denke, dass seine Art, es zu tun, oder der Prozess, obwohl es anders ist, andere Ergebnisse bringen kann. Weil er Ihnen auch zeigt, wie man einen Agenten oder einen Roboter herstellt, folgt den Pfeilen darüber, indem er den Wert der Rotation und der Bewegungen nachschlägt und ihn darauf folgt. Wieder, es ist ein bisschen anders. Wenn Sie Fragen haben, lassen Sie es mich wissen und vielleicht kann ich Ihnen auch helfen.
5. Ein Agent: Also für dieses Kapitel wird mehr darüber sprechen, wie man sich
mit der Rauschfunktion bewegt , anstatt nur auf die Rotation zu schauen, wie wir es vorher getan haben. Jetzt für diese Zeit brauchen
wir keine Klasse für Flussfeld, wir brauchen nur eine Klasse für einen Agenten, der sich über diese Königin bewegen wird. Wir brauchen die Rotation nicht wirklich zu sehen. Das einzige, was der Agent benötigt, um sich zu bewegen, ist, seine Geschwindigkeit zu verstehen,
entscheidet, dass es sein muss, und welche Art von Rotation Sie basierend auf der Rauschfunktion erhalten. Lassen Sie uns damit beginnen, eine neue Registerkarte zu erstellen. Und dann hier drinnen schreibe
ich einfach meine neue Klasse, die auch Agenten genannt wird. Okay, das erste, was der Agent braucht, ist eine x- und y-Position und Geschwindigkeiten und die Größe. Lassen Sie uns beginnen, indem Sie den Arzt aufschreiben und dann sehen, wie die Dinge tatsächlich in ihnen
bewegen Neustart Größe und wir werden sehen, wo wir die Geschwindigkeiten verwenden werden. Also wieder, fangen Sie einfach mit x und y an. So werden x und y auf die gleiche Weise verwendet, wie wir im Flow-Feld verwendet haben. Aber dieses Mal werden wir Geschwindigkeit nutzen, um unsere Agenten auf dem Campus zu bewegen. Also werde ich x Breite dividiert durch zwei initialisieren, weil ich nicht zufällig verwenden möchte. Und dann bewegt es sich aus dem Bildschirm oder es geht von einer Kante von ihnen nach außen, weil ich
die Grenzen noch nicht für den Bildschirm oder überhaupt nicht überprüfen werde , weil ich es mag, wenn sie außerhalb des Bildschirms
gehen oder die Seite mit das Design. Und dann werde ich y tun, x Höhe geteilt durch zwei. Und ich habe meine Breite und Höhe AD 500 mal 500. Und dann für die Geschwindigkeit werde
ich ihm eine Geschwindigkeit von geben, sagen wir mal eine. Okay, jetzt, dieser Fluss
bewegt sich und wir werden nur ein Punktstrichgewicht verwenden. Und dann werde ich mein X und Y zeichnen, um es zu laufen. Und wir können Agentenklasse sehen. Lassen Sie es uns initialisieren. Und wir brauchen keine Parameter. Ich mache nur alles innerhalb der Klasse und dann auf dem Display. Und wenn ich das durchführe, sehen
wir den Punkt in der Mitte. Großartig, jetzt ist es Zeit, die Updates zu verwenden. In der Update-Methode müssen
wir X und Y mit Kosinus und Sinus verschieben, wie wir es im Flussfeldbeispiel getan haben. Also initialisieren wir tatsächlich den P-Arzt im Grunde gesagt, geben Sie mir einen nu p Vektor an Position x bei Kosinus des Winkels y, Sinus des Winkels. Das ist also im Grunde das Gleiche, aber wir bewegen uns. Also muss ich den Kosinus hinzufügen. Die Position des Extra auf die vorherige Position oder den Ausbreitungspunkt, dann werde ich dasselbe tun. Jetzt werden wir einen Winkel brauchen. Also habe ich gerade erstellt und der Winkel wird funktionieren, da wir dasselbe tun, was wir im vollen Feld getan haben. X geteilt durch y, geteilt durch Skala. Ich werde nicht eindimensionale, zweidimensionale verwenden. Und dann lernen wir etwas über das dreidimensionale Gitter. Und dann multipliziere ich es mit. Also initialisiere ich die hier drüben. Wir werden keine Skala mit 300 machen. Sagen wir zehn. Jetzt wird das nicht übereinstimmen, weil wir das Update hier noch nicht hinzugefügt haben. Also werde ich es, und wenn wir
damit anfangen und jetzt können wir die Geschwindigkeit hinzufügen. Dies erhöht die Lichtgeschwindigkeit. Drei, zum Beispiel, werden schneller sein. Und je schneller es muslimischen Todesfällen gegeben wird, denn je kleiner
die Geschwindigkeit stören die Bewegungen, weil es
keinen Platz dazwischen gibt , weil Sie nur 1 zu einer Zeit bewegen. Wenn wir SP3 haben. Es bewegt sich jedoch auf einmal Sweep-Pixel, also ist es schwieriger. Also lassen Sie uns zum Beispiel tun, und Sie werden sehen, dass es mehr Platz hat. Dies ist auch Sie mit dieser Rate verwenden können und erhöht v In diesem wird Frisur. Also, jetzt werden wir einfach bei einem bleiben und sehen, wie es sich tatsächlich bewegt. Wie Sie sehen können, sind die Muslime sehr glatt, weil wir einen sehr hohen Maßstab haben. Wenn ich diese 400 verkleinere, wir an, wir werden mehr Rotationen sehen, weil es
sich jetzt durch mehr höhere Punkte oder mehr Punkte in der Welle bewegt. Und wenn ich das vergrößere, sagen
wir 50, werden Sie mehr Rotationen sehen. Denken Sie also darüber nach, als ob es Ihnen mehr gibt, die Rotation
bekommt, mehr Stärke. So hat es die Oberhand Art von mehr Winkeln und dann können wir eine Farbe hinzufügen, um es auch. Also, was soll gemeint sein? Das Gleiche. Vielleicht ändern Sie es auf drei, damit Sie ein bisschen eine Änderung der Größe hier sehen können. Und dann werde ich initialisieren, geben Sie ihm einen Strich, Farbe. Und das war's. Das ist alles, was Sie tun müssen, um all diese erstaunlichen Kunstwerke zu bekommen, die Sie sehen. Im nächsten Kapitel werden wir sehen, wie wir ein Array von Agenten erstellen können. Bewegen Sie sich zufällig durch den Bildschirm für jede der Liganden.
6. Viele Agenten: Lassen Sie uns nun unser Array von Agenten erstellen. Und bevor ich irgendetwas davon tun kann, möchte
ich das Farbanray hinzufügen, damit wir die Farbe auch randomisieren können. Okay, wir müssen das in ein Array ändern. Und dann hier drüben, anstatt den Agenten selbst zu initialisieren, werden
wir das Array initialisieren und ich werde nur eine 100 für jetzt machen. Und dann innerhalb einer for-Schleife, die kleiner ist als die Agentenlänge. Wir werden unsere Agenten bei Agent i initialisieren. Also für jedes Ereignis wird oder für jedes Element innerhalb des Arrays passieren. Und dann hier drin kann
ich die Schleife für Agenten in jedem Agenten verwenden. Also eine foreach-Schleife, weil sie den Index nicht verwenden müssen. Also werde ich nur für Agenten, Agenten verwenden. Das sorgt also dafür, dass es die ganze Sache noch durchschaut. Rechtes Auge oder die Position hier drüben. Und wir haben Agenten nicht gewechselt. Und jetzt wird jeder Agent diese Breite durch zwei geteilt und Höhe geteilt durch zwei initialisiert. Und sie alle haben die gleiche Bewegung, weil wir keine zufällige Geschwindigkeit oder zufällige Größe haben. Wenn ich das mache, wirst
du sehen, dass sie alle übereinander sind. Sie haben also die gleiche Geschwindigkeit und die gleiche Größe. Sie werden also hier keine Änderungen sehen. Aber lasst uns zuerst die Größe ändern. Ich werde es nach dem Zufallsprinzip von eins bis fünf bestimmen. Wenn ich das jetzt durchführe, wirst
du sehen, dass es einfach viel besser ist, denn jetzt dominieren die fünf die Bewegungen. Die anderen sind entweder unten oder oben, so dass Sie sie nicht sehen können. Sie sind weniger randomisierte Geschwindigkeiten. So können Sie es sehen, weil sie jetzt unterschiedliche Geschwindigkeit haben. Und so bewegen sich einige von ihnen schneller. Und Sie können sehen, dass sich vielleicht einer der kleineren schneller bewegt. Und so war klar, dass dies kleiner ist. Es ist also, als ob es eine unterschiedliche Größe hat oder ob es die gleiche ist, die Interesse hat, aber es ist nicht, es ist Vielfaches. Nun lassen Sie uns die Farben randomisieren, so dass Sie sie auf der gleichen Linie übereinander sehen können. Bevor ich mit der Randomisierung der Axon-Akquisition beginne, werden
wir nur die Position
oder den Index randomisiert , den wir von diesem Array bekommen. Also nenne ich diese Ursache, ich werde das sogenannte Array verwenden. Und sobald Sie einen zufälligen Index erhalten, so wird es ein Zufallsprinzip aus den Farben, die so was auch immer ging. Also, wenn ich jemals hier drüben Werbung mache. Es wird konsequent sein und er muss es nicht in Büchern ändern. Aber das wird sich beschweren, weil es keine ganze Zahl ist. Indizes müssen ganze Zahlen. Also werde ich das einfach in eine ganze Zahl umwandeln. Und jetzt, wenn ich das mache, werden
wir sehen, dass es mehrere Farben gibt. So gibt es in der Tat mehrere Agenten übereinander. Also lassen Sie uns jetzt tatsächlich die x- und y-Position randomisieren. Also wollte ich von jedem Bereich von 0 bis zur Breite, von 0 bis Höhe sein. Jetzt sollte das in basierend auf Illinois k_l funktionieren und du bist nett, das wird anders aussehen. Also lasst uns ihre Rauschskala ändern. Wenn wir dies auf zehn reduzieren, reduzieren Sie
vielleicht sogar die Größe ein wenig auf drei. Wieder, um die Geschwindigkeit statt zu erfüllen, statt von eins zu negativ drei oder sogar langsamer. Also werde ich 222 negativ gehen, weil ich mich in beide Richtungen bewegen wollte und mit nur einer Richtung sowohl für die x als auch y und die Geschwindigkeit wird sowohl für x als auch y verwendet. nur einer Richtung sowohl für die x als auch y und die Geschwindigkeit wird sowohl für x als auch y verwendet.
Und Sie können sehen, dass es viel schöner ist, aber es ist nicht. Fahrzeuge bewegen sich nach oben, während andere sich nach unten bewegen. Und das gleiche gilt für x und y. Von links nach rechts oder von rechts nach links können
wir jetzt die Anzahl der Agenten erhöhen. Also machen wir es 1000. Und in der mehr Agentur haben die schönere Episode , die eigentlich ich gerne auf sehr kleine Größe gehen. Also meine ist in der Regel fünf zu eins oder zwei. Ist, wenn Sie sehr dünne Linien haben, zehn, sieht es schöner aus. Und ich werde sogar den Hintergrund ändern , weil
das Gewicht manchmal ein wenig zuerst zu sein scheint. Und Farben. So haben Sie ein Skizzenbuch Farbe, es gibt eine kleine Seite. Sieht nett aus. Und Sie können auch andere Farben hinzufügen. Vielleicht können wir ein Jahr warten und weil wir uns entschieden haben, die Indizes aus den Halsbändern dieser Länge zu wählen. Also, egal welche Länge Sie hier haben,
was bedeutet, dass es nicht ruiniert, dass Ihre Anrufer bei deklariert Blendung getragen werden. Es ist also alles dynamisch zu machen, ist viel besser, viel schöner. Jetzt fügt das Weiß dem Design eine schöne Note hinzu. Also muss ich nur jetzt tun, ist einfach mit uns spielen, töten. Eine meiner Lieblingswaagen ist nicht 1000, also verwende ich gerne 3 Tausend, weil es viel
glatter ist und dann füge ich gerne eine Rotation hinzu. Also vielleicht lassen Sie mich 30, einen Kindle noch höher 50 und immer noch schön aussehen. Es gibt tatsächlich eine sehr abstrakte Malerei Arbeit, die noch mehr Rotation, die Sie hinzufügen, wenn die Welle sehr Zoom ist, dann warten Sie, hier. Es sind 3 Tausend glattere Drehungen oder größere glattere Drehungen, die Sie haben werden. Wenn ich das tue, sagen wir 200, werden
Sie sehen, dass sie sich alle in
die gleiche Richtung bewegen oder über die Szenenseite der Welle. Aber dann drehen sie sich mit einem sehr hohen Winkel. Und so haben sie die beste Arbeit geleistet. Wir können dies auch erhöhen, um zu sagen. Und weil wir keine ISI und Zufallssamen hatten, wird
es sich jedes Mal ändern. Aber wenn Sie wollen, können Sie es sehen, bevor Sie überhaupt Zentralisierung. Also ja, es ist genau hier. Und nur immer mit einer 0 beginnen, nur Rekordjahr, was auch immer. Zufälliger Schlaf wegen der Farben. Denn die einzige Randomisierung, die wir jetzt haben, ist, weil, und Sie werden sehen, dass wir das Gleiche bekommen. Aber jetzt möchte ich Ihnen auch zeigen, wenn ich das rückgängig mache, werden
andere schauen. Also, wenn ich falsch angerufen ist kleiner, dann ist die Miss Frank. Sagen wir mal eins bis zweitausend hier drüben. Und Ihre Stärke in 300 Nanoskala und gehen, um
mehr Rotationen und weniger eine glatte Bewegung haben . Also, selbst wenn man sich einige Sonden hier drüben anschaut, gibt es eine Menge laute Bewegung, Art Ähnlichkeit zufällig, dass sie an ihrer Position bleiben, was viel schöner ist als es OK ist, gehen Sie 2000 Millionen. Sie können ihre Rotation sehen. Das ist eigentlich eines meiner Lieblingswörter hier drüben. Es ist viel schöner als dieses, weil es Ihnen auch Variationen in Formen gibt. Im nächsten Kapitel werden wir ein wenig darüber sprechen, wie Sie Ihrer Ankündigung eine dritte Dimension hinzufügen
können.
7. Dreidimensionales Rauschen: Okay, für dreidimensionales Rauschen müssen
Sie der Rauschfunktion nur noch ein Argument hinzufügen. Also haben wir bereits x und y, und die dritte Dimension wird natürlich einfach sein. Dies ist nur die herkömmliche Benennung für dreidimensionale, die x, y und z ist. Aber fühlen Sie sich frei, es zu nennen, was Sie denken, macht mehr Sinn für Ihre Arbeit. Also werde ich einfach Z hier hinzufügen und dann werde ich es mit einem zufälligen Wert initialisieren. Und ich schaffe es ab 2.4. Dann werde ich hier drüben enden. Und Santo Garners Funktion und erhöht hier unten. Jetzt um 0,1 erhöht. Und das ist so ziemlich es für die dritte Dimension. Es ist sehr einfach. Und der Grund, warum ich es nicht durch die Rauschskala dividiere, weil ich möchte, dass es
beeinflusst wird oder Sie wollen, dass die Rotation von mehr als nur x und y beeinflusst wird. Denn wenn ich es durch die NusCale divide, wird nicht so viel Unterschied machen, aber ich möchte, dass z die Rotation ein wenig mehr antreibt. Und bevor ich das
durchführe, möchte ich nur vorangehen, dass der Großteil der Arbeit, die ich mache, oder eigentlich die ganze Arbeit, die ich vorher gemacht habe, nur zweidimensional und geräuscharm ist. Also habe ich nie wirklich mit dreidimensionalem Rauschen gearbeitet wie in ausgegebenen Artworks, die ich teile, weil ich immer noch experimentiere mit dem, was gut aussieht. Ich denke jedoch, es hier einzuführen, ist sehr wichtig. Obwohl ich keine Beispiele mit der dritten Dimension habe. Ich denke, es ist unerläßlich, um die Rauschfunktion zu verstehen. Ok? Und ich werde es laufen lassen. Und dann werden wir beginnen, ein paar Anpassungen zu tun, um zu sehen, was sich ändert. Jetzt werden Sie sehen, dass die Rotation sehr laut ist weil sie viel mehr rotiert als früher. Aber wir können dies beheben, indem wir entweder den Zufallswert ändern, den anfänglichen Zufallswert für z hier, oder wir können reduzieren, was ich am effektivsten fand, ist es, den Betrag zu verringern, den wir Z inkrementieren. Wenn ich also 0,01 mache, wird
es mir weniger Rotation geben als zuvor. Es ist also immer noch sehr gedreht, aber wie Sie sehen können, ist
es nicht die gleiche Rotation wie zuvor. So bewegt es sich ein wenig und dann seine Drehung um
360 Grad und bewegt sich wieder in einer sehr fließenden Bewegungen. So ist es immer noch gibt Ihnen ein sehr schönes Ergebnis, aber es sieht nicht so schön aus mit Farben. Und es sieht auch nicht so schön aus mit undurchsichtigen Farben. Also werde ich zuerst diese 250 ändern, nur um zu sehen, was passiert. Und sofort ist es viel besser, weil Sie beginnen, die Bewegung ein wenig besser zu sehen. Aber ich mag die Ergebnisse mit Farben immer noch nicht. Also erstelle ich ein anderes Clara Array. Ich werde es einfach so machen. Jetzt sieht das nicht so schön aus. Also werde ich dies auf 0,001 ändern, um die Menge der Rotation zu reduzieren, die passiert. Es ist also seltener als zuvor. Und ich kann sehen, dass es eher wie Haarbewegungen oder Rauchbewegungen aussieht. Und es sieht viel schöner aus, auch mit weniger Kapazität, es wird schöner aussehen, aber Sie müssen darauf ein wenig mehr warten weil es die Farbe aufbauen muss. Deshalb arbeite ich nicht unbedingt mit einer dritten Dimension, weil ich gerne mit Farben arbeite. Obwohl das sehr interessant aussieht, es nicht so faszinierend aus wie ein wollte groß sein, weil meine Arbeit tendenziell sehr bunt ist. Aber wenn Sie jemand sind, der mit Schwarz-Weiß-Menge arbeitet, dann würde dies auch in Schwarz und Weiß perfekt aussehen, oder tun Sie einen Ton Farben, weil es Ihnen ein mehrdimensionales Design geben wird. Und Sie können auch mit dem Lärm Kill oder Wiederhören spielen. Also machen wir es dreitausend. Sie werden mehr Kreise im Design bekommen. Und wenn ich das auf zehn reduziere, können
wir sehen, dass es insgesamt weniger Rotation gibt. Aber dann beeinflusst das z die Rotation, so dass es immer noch rotiert, aber auf einem viel glatteren Weg. Und es ist auch verzerrend, formt oder verzerrt den tatsächlichen Fluss des Zweidimensionalen in einer Weise. Und manchmal kann das ein sehr schönes Ergebnis geben. Es ist eine sehr einfache Formel. Und einfach, indem Sie die schönen Funktionen von einer zweidimensionalen Rauschfunktion zu einer dreidimensionalen netten Funktion ändern, können Sie mit einer Vielzahl von verschiedenen Ergebnissen erzielen. Sie müssen damit herumspielen,
sehen, was am besten für Sie funktioniert. Spielen Sie mit der Färbung herum. Und wir werden auch über Klontechniken sprechen und andere
Formen als regns verwenden , um Ihr Design zu gestalten. Aber bevor wir etwas davon im nächsten Kapitel tun können, werde
ich vorstellen, wie man dieses Design statisch macht.
8. Statische Rauschen: Arbeit mit statischem Design macht mir mehr Spaß als mit einem dynamischen beweglichen Design zu arbeiten. Hauptsächlich, weil ich gerne die Ergebnisse sehen, sobald ich das Programm
ausführe , anstatt auf das Ende der Animation zu warten. Und dieses Design statisch zu machen ist sehr einfach und die Ergebnisse sind völlig anders. Sie gehen zu den gleichen Pfaden, die die Animation durchläuft. Aber es wird mehr Vektor aussehen. Und es sieht so aus, als ob Sie
BCA-Kurven in Adobe Illustrator verwenden und dieses Design von Hand gemacht haben. Und dann werden Sie in der Lage sein, mehr Variationen zu erhalten, weil Sie einfach das Programm ausführen und jede Seite speichern können, die Sie erhalten. Okay, also fangen wir an, wo wir vorher aufgehört haben, aber ich werde alles entfernen, was wir für das dreidimensionale Geräusch getan haben. Denn wieder arbeite ich normalerweise mit zweidimensionalem Rauschen. Und dann werde ich das auch entfernen. Also brauchen wir es nicht transparent zu sein und dann haben wir auch nicht die Größe verlassen. Okay, also für uns, um dieses statische Design zu erstellen oder Vektoren zu erstellen, sind besetzte Kurven aus der Bewegung. Wir werden die Anfangsform,
einen Eintrag, verwenden und den aktuellen Scheitelpunkt darin verwenden. Und wir werden hier eine for-Schleife verwenden, denn jetzt bewegen wir uns nicht nur durch, wir müssen über die Bewegung als for-Schleife nachdenken. Also, bevor es sich bewegte, weil er in
der Draw-Funktion war und die Draw-Funktion im Grunde eine wilde Schleife ist, die nie endet. Aber ich möchte mehr Kontrolle über mein Design haben. Also werde ich eine for-Schleife mit einer festen Länge verwenden. Also werde ich hier eine Länge erstellen. Ich werde es zu einer Ganzzahl machen. Und wir fangen mit zehn an. Dann werde ich den Schlaganfall verlassen. Und die Färbung gleiche Geschwindigkeit x und y sind die gleichen. Aber anstatt eine Ebene zu zeichnen, werde
ich beginnen Form verwenden. Form kann mithilfe von Scheitelpunkten im Inneren zeichnen. Und ich werde die
for-Schleife weniger als die Längeninkremente verwenden . Wenn ich nun den Scheitelpunkt hier zeichne und dann hier im Display reingehe, um die Agenten zu aktualisieren, was ich hier drüben zu tun versuche, wird
es sehr gebrochen sein, weil ich jeden Scheitelpunkt mit dem Mittelwert von hier
zeichnen möchte . Also werde ich es einfach innerhalb der Update-Funktion zeichnen. Und dann werde ich die Update-Funktion innerhalb meiner for-Schleife aufrufen. Also im Grunde innerhalb meiner for-Schleife, jedes Mal, wenn ich einen neuen Winkel bekomme und dann ändere ich die Position. Es war also dasselbe, was wir hier gemacht haben, als ich die Update-Methoden anrief. Weil wir innerhalb der Zeichenfunktion aktualisiert haben. Also im Grunde, was wir die Rauschfunktion immer und immer wieder nennen. Und dann rufen wir x und y auf, oder wir erhöhen x und y jedes Mal, wenn ihre Werte durch diese Werte sind. Stattdessen werde ich all dies in die for-Schleife setzen, weil wir
keine Schleife mehr zeichnen wollen oder die Draw-Funktion, die für immer Schleifen ist. Und ich werde nur gekrümmten Scheitelpunkt verwenden, ist ich
wollte Enden wieder kurven, um es bei x, n, y zu setzen und dann werde ich die Update-Funktion innerhalb meiner for-Schleife aufrufen. Also, jetzt haben wir neu erstellt, was wir in der Kieferfunktion getan haben. Aber in ihnen waren kontrollierte Schleife. Und bevor wir es ausführen, müssen
wir sicher sein, dass dies nicht Schleifen ist, weil wir nicht wollen, dass Schleifen für immer weitergehen. Und dann werde ich die Update-Funktion von hier entfernen. Großartig. Nun, weil wir die Farbe von Weiß gemacht haben, die für diese dreidimensionale Umgebung vereidigt wurde, geht
Ihr Material in meine Farben zurück. Okay, wir sehen schon etwas, aber weil unsere Länge für die for-Schleife sehr klein ist und er anfing zu besuchen, sehen
wir sehr kleine Linien. Also, wenn ich das auf, sagen
wir 30 erhöhen , jetzt fangen wir an, das Design viel besser zu sehen. Außerdem werde ich den Film entfernen müssen, also werde ich einfach noch tun. Jetzt werden wir nicht mehr satt. Es sieht viel schöner aus. Wir können auch die Geschwindigkeiten erhöhen, denn jetzt, wenn ich die Geschwindigkeit erhöhen, wird
es nur meine Länge noch länger machen, weil einige, ein Scheitelpunkt zum anderen, gibt es eine Geschwindigkeit von Scheibenpixeln statt nur zwei. Also, wenn ich das mache, wirst du mehr flüssige Bewegungen sehen. So müssen Sie eine Art Gleichgewicht zwischen den Geschwindigkeiten und Ihrer Länge von jedem dieser Pfade. Die weniger Geschwindigkeit wird Ihnen eine kürzere Länge geben. Aber dann können Sie es von hier aus erhöhen und Sie erhalten ähnliche Ergebnisse. Was an statischen Designs schön ist, ist, dass Sie sich
die Pads Ihrer Rauschfunktion sofort ansehen können . Also, wenn Sie etwas testen möchten, vielleicht möchten Sie es statisch machen und dann starten Sie und Sie wollen die Visuals, das bewegte Design, dann können Sie MiniTest es verwenden und dann mit den Werten fortfahren, die Sie von Newton wütend neu skalieren -Zeichenfolge. Und wenn ich das Gegenteil mache, wie wir es vorher getan haben, also werde ich hier drüben 100 machen und dann vielleicht tausend und hier drüben, wirst
du Design sehen, das eher wie Kritzeln aussieht oder die Kratzer, die Daten auf einem Stück Papier es mit Farben. Wenn Sie die Anzahl der Agenten erhöhen möchten, können
Sie dies auch hier tun. Und es wird Ihnen ein dichteres Design geben. Aber einer meiner Lieblings-Blicke über dieses Design ist, wenn wir zurück zu 300 gehen und dann dieses, und dann reduzieren Sie die Anzahl der Agenten gehen zurück zweitausend, nur damit Sie es besser sehen können. Und dann statt Schlaganfall machen
wir es tatsächlich füllen und wir machen hier keinen Strich. Und das ist, wenn die Dinge beginnen sehr,
sehr interessant für mich zu werden . Jetzt ist die Länge sehr, sehr hoch, besonders für Füllungen. Je höher die Länge, desto grober wird die Füllung aussehen. Wenn Sie jemals mit Adobe Illustrator gearbeitet haben und mit dem Bessie oder
dem Stiftkurvenwerkzeug in einem anderen Programm gearbeitet haben. Es funktioniert genauso. Wenn Sie sehr starke Rotationen in Ihren Kurven haben, dann haben Sie das Gefühl, dass die Lücken vom ersten bis zum letzten Punkt abgedichtet werden. Also, wenn Sie dies reduzieren wollen, können
Sie mit der Länge spielen. Sie haben also weniger Rotation für jede Hüte oder jede Gruppe von Scheitelpunkten, die miteinander verbunden sind. Aber dann müssen Sie das gleiche Aussehen auf dem gleichen Design mit diesen Kurven sehen. Also gehen wir hoch. 3030 kann viel schönere Ergebnisse liefern. Jetzt kann ich auch die Geschwindigkeit erhöhen. Ich kann auch die Anzahl der Agenten erhöhen. Jetzt sieht es eher wie eine Illustration von Plänen aus, besonders wenn Sie Farben verwenden, die Pläne ein wenig mehr nachahmen. Also all die Grüns. Und dann können wir das vielleicht reduzieren, sogar lernen. Also haben wir weniger Rotation. Lass uns hier rüber gehen und wir werden die schönen keltischen 3 Tausend erhöhen, also haben wir auch weniger Rotationen. Und dann werde ich jetzt die Rotation ein wenig erhöhen, oder die Stärke ihrer Geräuschwerte, oder wir können damit herumspielen. Wir können mit seinen Füßen runtergehen. Sie können auch von eins zu zwei gehen. Wir müssen nicht in Richtung gehen, nur in eine Richtung. Es wird immer noch sehr schöne Ergebnisse liefern. Sie können bis zu 1000 gehen, und das ist buchstäblich, was ich jedes Mal tue. Ich möchte ein Design sehen, das gut aussieht. Ich habe versucht, ein Schreibtisch-Blotter Werte zusammen, bis etwas klickt oder bis etwas passiert. Deshalb arbeite ich auch gerne mit Geräuschsamen, dem zufälligen Samen. Ich denke, das ist einer der Gründe, warum wir keine andere Balance bekommen. Ja. Jetzt bekommen wir viele verschiedene Variationen. Wir können dies auch erhöhen, um eine 100 zeigt dort, so dass Sie sie mehr Rotationsdesign
erhalten können , aber mit diesem Vektorstil. Und jetzt erhalten Sie dieses Design, das auch sehr, sehr interessant aussieht. Ich möchte auch im nächsten Kapitel vorstellen, wie man mit Formen in
diesem direkten Design herumspielt , um Designs Ihrer Ellen basierend
auf den Formen zu entwickeln, die Sie verwenden, um den Rauschfunktionspfaden folgen.
9. Verschiedene Pinsel: Ich habe in meinem vorherigen Kurs über das Erstellen benutzerdefinierter Formen gesprochen. Zurück zu den Grundlagen. Wir können das hier tun, um diese fließenden Bewegungen mit einigen interessanten Formen zu malen. Dies ist sehr ähnlich wie das Erstellen von benutzerdefinierten Photoshop oder Procreate Druck, wenn Sie dies jemals getan haben, jeder Pinsel kann eine eindeutige Textur geben, die Variantenergebnisse erzeugt, anstatt Sie zu zeichnen, aber der Computer ist, ich werde erstellen einen Pinsel mit Ihnen und nachdem ich Ihnen einige meiner Designs mit anderen Bürsten zeigen und Sie kurz durch die Pinselkomponenten führen werde. Okay, ausgehend von der Stelle, an der wir im vorherigen Kapitel oder in der vorherigen Lektion aufgehört
haben, müssen wir die Form nur in dem Moment ändern , in
dem wir zeichnen, indem wir den aktuellen Scheitelpunkt verwenden. Weil wir unser dynamisches Design in ein statisches Design umwandeln. Und das werden wir fortsetzen. Der einzige Unterschied ist, dass wir eine Pinselfunktion erstellen werden. Also lasst uns das hier schaffen. Ich werde es einen Pinsel nennen. Und es wird eine Methode innerhalb unserer Klasse oder Agentenklasse sein. Und für meinen Pinsel brauche
ich eine Exposition und die y-Position und auch eine Zählung. Die Zählung wird hier nicht unbedingt benötigt, aber ich möchte es hinzufügen, um diesen Zufälligkeitseffekt in den Pinsel hinzuzufügen. Beginnen wir also mit einem x und y zuerst. Also werde ich Float Position x machen, ich werde es einfach nennen. Und der andere wird Position genannt werden. Warum? Weil sie mich hier nicht mit den X und Y in meiner Klasse verwechseln wollen. Also habe ich es einfach geändert. Und jetzt hier drin werden wir unseren Pinsel kreieren. Also sagte er, wir wollten einen zufälligen Kreise Pinsel erstellen. Also für einen zufälligen Kreise Pinsel, werden
wir ein paar Kreise brauchen. Lassen Sie uns also beginnen, indem wir tatsächlich den Kreis erstellen und
dann diesen in einen dynamischeren Ansatz verwandeln. Also beginnen wir zuerst mit, lassen Sie uns sagen, drei Kreise trocknen. Und dann werde ich den ersten an zufälliger Position von fünf bis zehn setzen, und dann eine andere zufällige Position für das Y von fünf bis zehn. Und dann werde ich ihm eine zufällige Größe geben, weil Kreis drei Argumente im Gegensatz zu der Ellipse nimmt, die vier dauert. Da es sich um einen Kreis handelt, sind die Breite und die Höhe gleich. Es wird also nur ein drittes Argument anstelle eines dritten,
vierten Arguments für Breite und Höhe sein . Also hier werde ich nur einen Ohm fünf machen, oder von eins bis fünf. Also bekomme ich eine zufällige Größe von eins bis fünf, okay, und ich werde dasselbe für all diese tun. Der Grund, warum ich von fünf bis zehn gesagt habe, ist, weil ich diese Form
in einem Quadrat enthalten möchte , weil ein Pinsel normalerweise einen eigenen Behälter hat. Und um das zu tun, muss
ich eine Matrix schieben und dann diese ganze Schachtel mit Formen übersetzen. Also die ganze Bürste mit der Position x und Position y. Also werde ich nur tun übersetzen und dann die Position x und Position y. Und weil ich alle, Ich möchte, dass die Übersetzung nur für jede frische separat passieren, Ich werde zu müssen schieben Sie eine Matrix für jeden von ihnen. Also Push-Matrix und Pop-Matrix. So produziert das eine neue Leinwand für uns und dann übersetzen sie das dorthin, wo ich will und in ihr hinein. Oder dieser ganze Pinsel wird drei Kreise zufälliger Positionierung sein. Und sie beginnen von der Position x und Position y. Also fünf bis zehn sind eigentlich fünf Pixel von Position x und zehn Pixel von Position x. Und das gleiche gilt auch für y. Ok? Und jetzt rufen wir den Pinsel hier drüben anstelle des aktuellen Scheitelpunkts. Und wir machen x und y, wie wir es mit dem aktuellen Scheitelpunkt getan haben. Ich werde die Größe hier ein wenig erhöhen weil ich glaube nicht, dass es klar sehen wird. Und ich werde die Länge auf nur eins reduzieren, weil ich hier drin passieren will. Und dann werde ich die Anfangsform entfernen und handeln, weil wir nicht mehr mit Scheitelpunkten zeichnen. Und ich habe auch die keine Stroke entfernt und ich hatte einen Schlag schwarz. Und dann möchte ich hier, sagen
wir zwei Agenten, weil ich es wirklich klar sehen will. Ok? Das trocknet also drei Kreise übereinander und auch diesen. Ich möchte die Zufälligkeit ändern, also mache ich 15 bis 20 hier drüben, und dann 22, sagen wir 30 hier drüben. Weil ich mich ändern möchte, ändern Sie es auf der X-Achse ein wenig, damit wir es sehen können. So können wir sehen, dass es drei Kreise gibt. Ok? Also hier sind drei Kreise und das sind auch drei Kreise. Und während wir es ausführen, erhalten
wir zufällige Positionen für die X-Achse und die Y-Achse. Jetzt, anstatt die drei Kreise so zu zeichnen, werde
ich es in eine for-Schleife ändern. Also mache ich für Integer i gleich 0 bis normal for-Schleife und ich ist kleiner als, sagen wir drei. Und wir werden es erhöhen, und dann haben wir nur einen Kreis. Also jetzt haben wir unseren Code um zwei Zeilen auf
unnötige Zeilen reduziert , weil auf diese Weise ich die drei Kreise bekommen habe und sie alle randomisierten Ort für x und y haben. Okay, und wenn
wir das ausführen, jetzt werden wir ähnliche Ergebnisse auf die vorherige. Der einzige Unterschied hier ist, dass, bevor wir einen anderen Bereich für zufällige hatten. Hier haben wir den gleichen Bereich. Vielleicht können Sie die Reichweite ein wenig größer machen, damit Sie
viel mehr Variation und die Positionierung bekommen . Also, wenn ich 15 bis 20 für die x-Achse hier drüben mache, oder 5-20 tatsächlich. Also erhöhe ich nur die Reichweite und du wirst sehen, dass die Positionierung etwas mehr Variation hat. Also bringe ich es einfach auf zehn zurück. Und hier ist, wo die Zählungen hereinkommen oder ein Zählparameter, weil ich möchte, dass dies nicht nur drei ist,
ich möchte, dass es ein Zufallswert ist, der darauf basiert, was ich ihm hier gebe. Also werde ich nur Integer-Zählung machen. Und ich werde das als die Länge für das Array setzen. Und hier drin werde ich sagen, Zufallswert von eins bis fünf. Also werde ich es auch tun. Ein Kreis, 23 bis fünf, und ich runde ihn ab. Also ist es eigentlich nicht bis zu fünf, es ist zu vier. Wenn Sie wollen, dass es bis zu fünf ist, dann gehen Sie bis zu sechs. Aber ich bleibe bei fünf. Und dann müssen Sie es in eine ganze Zahl umwandeln. Denn hier haben wir eine ganze Zahl innerhalb der for-Schleife weil das Zählen immer nicht dezimal ist, wenn es um solche Sachen geht. So kann ich Halbkreis zeichnen, zum Beispiel, drei Kreise auf der Hälfte, also muss es drin sein. Und jetzt, wenn ich es führe, bekomme ich entweder 123 oder vier Kreise übereinander. Wenn ich also hier rüber gehe und 100 mache, bekomme
ich noch viel mehr. Und dann kann ich die Länge wieder auf, sagen wir mal zehn erhöhen. Und wir können den Strich entfernen, damit wir das Design besser sehen können. Und ich werde auch die Geschwindigkeit erhöhen, weil ich mehr Lücken
zwischen den Kreisen will , damit er die Wirkung dieses Pinsels bekommen kann. Es wurde also auf 20 erhöht und die Geräuschstärke auf tausend erhöht, weil ich diese fließende Bewegung
will und diese auf zehn reduzieren möchte. Und dann werde ich sogar diese 1000 oder sogar 4 Tausend machen. Jetzt bekommen wir, dass zufällige Kreise Pinsel in das Design. Wir können auch die Größe jetzt reduzieren, weil ich nicht sehr groß von vorher. Also von eins bis fünf, würde
ich sagen, ist wirklich gut. Zufälliges Kopieren und Einfügen einer anderen Art und Weise, um dies zu färben, weil ich es ein wenig besser sehen möchte, weil der Effekt nicht immer funktioniert, oder die Auswirkungen anderer Pinsel
sehen nicht immer schön aus, wenn es auf die gleiche Weise ist oder Färben Sie es. So müssen Sie manchmal einfach die Art und Weise ändern, wie Sie
Ihre Designs färben , um die Auswirkungen von dem zu sehen, was Sie erstellen. Manchmal sieht das, was Sie erstellen tatsächlich cool aus, wenn Sie vielleicht nur zwei Farben verwenden. Aber hier werde ich eigentlich diese Palette nennen. Anstatt es hier dreimal zu ändern, kann
ich nur den Array-Namen ändern. Was ich hier mache, ist, den Sinus des Winkels
hier drüben von negativem eins zu 0 auf die Punktlänge der Paletten abzubilden . Also möchte ich die Werte des Sinuswinkels abbilden. Was auch immer sein Ergebnis aus der Sinuswinkelfunktion ist, ich möchte, dass es diesen Farben oder den Indizes dieser Farben zugeordnet wird. Und Indizes gehen von 0 auf eins kleiner als die Palettenpunktlänge. Also schränkt ich es hier drüben ein. Nur um irreführende Werte zu vermeiden, sind Fehler. Also werde ich nur noch einmal sagen, Index wird gleich sein,
beschränken Sie den Index von 0 auf Palettenpunktlänge minus eins. Also werden wir nie Array aus gebundener Ausnahme bekommen. Und dann werde ich das für Farben verwenden. Also statt hier mit dem Zufallsprinzip zu färben, was ich eigentlich nur für später ändern werde. Und ja, anstatt es zufällig hier drüben zu tun, werde
ich es innerhalb der Update-Funktion tun. Und ich werde die Palette mit dem Index nennen, den wir gerade erstellt haben. Und übrigens, der
gesamte Code für die verschiedenen Pinsel und die Färbetechnik wird im Ressourcenabschnitt dieses Kurses verknüpft. Also lassen Sie uns das laufen und sehen, was passiert. Okay, ich muss die Füllung von hier
nach hier ändern , weil wir dort die Farbe vorher ändern. Wir tun der Farbe nichts an. Und jetzt sollte es großartig funktionieren. So können Sie es sehen wie Ölpastellfarben, wenn Sie jemals mit denen gearbeitet haben, es hat eine sehr wachsartige Textur und das erinnert mich daran. So können Sie die Geschwindigkeiten erhöhen, sagen wir 15. Und du kannst damit herumspielen. Sie können sehen, die Textur ist körniger auf diese Weise, denn wie ich bereits sagte, Je mehr Geschwindigkeit Sie haben, desto mehr Raum zwischen jeder Form einander. Und wieder kann das Spielen mit dem Rauschen Grünkohl und Lärmstärken viele verschiedene Ergebnisse liefern. Also, wenn ich hier eine 100 mache, wirst
du ein ganz anderes Design sehen. Lassen Sie uns das auf sechs reduzieren. Ich werde einfach das Weiß entfernen, weil es ihnen nicht gefällt. Ja, das ist ziemlich genau das, was Sie über das Erstellen von Pinseln wissen müssen. Alles, was Sie tun müssen, ist, Ihren Pinsel hier zu erstellen, und dann können Sie ihn auch hier in seine eigene Funktion erstellen. in Ordnung, aber Sie müssen es hier anrufen. Und wenn Sie hier die Färbung machen,
dann denken Sie daran, die Füllung oder Strich hier drüben zu tun, aber das ist nicht notwendig. Das einzige Notwendige ist es zu trocken innerhalb der Update-Funktion nach Ihrem Winkel und x und y, denn dann werden Sie die Update-Funktion innerhalb Ihrer for-Schleife aufrufen, innerhalb Ihrer Display-Funktionsmethode innerhalb Ihrer -Agent-Klasse. Jetzt gehen wir zurück zu den anderen Formen. Nun, da Sie gesehen haben, wie Sie Ihre benutzerdefinierten Pinsel verwenden, hier sind einige Beispiele für andere Atem ist ein erstellt und die Ergebnisse, die ich bekam. Es macht Spaß, manchmal mit Schatten zu spielen, um Ihrer Arbeit Tiefe zu geben. In diesen Beispielen werden die Pinsel aus einer Ansicht dicke Clients dann kopiert den gleichen Pinsel mit etwas Versatz, wodurch ein Schatteneffekt. Sie müssen nur die obere Form mit Ihrem Farben-Array färben da Ihre untere einen dunklen Farbton haben sollte, um diesen Schatteneffekt zu erzeugen. Sehr einfach, aber sehr interessant. Der Trick bei diesem
ist jedoch, die Schrittgröße zu erhöhen und die Anzahl der Agenten zu verringern, damit es nicht zu voll ist. So sieht die Funktion aus. Ich wollte auch einen dünnen Pinselstrich erstellen, um diese ausgefransten quadratischen Pinsel nachzuahmen. Sie ärgern mich eine analoge Arbeit. Aber für computergenerierte Bilder waren sie ziemlich nett. Sie sind die gleichen wie die zufälligen Kreise Pinsel, aber mit Linien
statt, werfen Sie einen Blick auf die Funktion und versucht, sie neu zu erstellen. sind nur einige, die ich bei der Planung dieses Kurses ausgedacht habe. Es ist Zeit, Ihre zu kreieren und etwas Einzigartiges für Sie zu finden.
10. Farbtechniken: Ein Algorithmus kann so viele einzigartige Ergebnisse erzeugen, indem Sie Ihre Farbtechniken ändern außer zufällig Farben aus
einem Array auswählen oder Farben auf Position und Rotation zuordnen, können
Sie Farben aus einem interessanten Bild erfassen, indem die Farben jedes Pixels an der gleichen Position wie Ihre Formen, importieren
Sie einfach das Bild, passen Sie es an Ihre Leinwand, vorzugsweise im gleichen Verhältnis wie Ihre Leinwand. Fühlen Sie sich frei, unkonventionell zu sein und strecken Sie es aus. Verwenden Sie dann die GetMethod in der PMF-Klasse, um Ihre Farbe des zugrunde liegenden Pixels zu erfassen. Diese Beispiele zeigen einige meiner anderen generativen Kunst als Input. Eine erzeugt Farben während der Initialisierung der Agenten, und die andere packt die Farben, während sie sich bewegt, und erzeugt unterschiedliche Ergebnisse. Eine andere Technik, die ich von Taylor Hobbes Beiträge auf
seiner Website abgeholt habe , ist Färbung basierend auf ein paar verstreuten Farben auf dem Bildschirm. Es ist ein langer Prozess, aber der Kern ist verstreut und zeigt Objekte mit einigen zufällig gespeicherten Farben. Wenn Sie dann den Abstand zwischen Ihren beweglichen Agenten und diesen Objekten überprüfen, bestimmt
die kürzeste Entfernung die Farbe Ihres beweglichen Agenten. Jetzt können Sie mehr in Tyler Hubs Website lesen, wie seine Technik hat ein bisschen mehr Schritte, um es. Hier ist ein Beispiel, bei dem ich die Entfernung ständig verfolgt habe, während die Agenten sich bewegen, eine Voronoi-Textur
erzeugte. der x- oder y-Eigenschaft können Sie auch Farben aus Farbzeilen auf
dem Bildschirm horizontal oder vertikal erfassen . Es ähnelt dem Mapping der Position, aber dieser Ansatz hält die Farben relativ unübertroffen, wodurch ein Verlaufslook entsteht. Je länger dieses Programm jedoch ausgeführt wird, desto mehr werden die Farben zusammengeführt und der Verlaufseffekt zerstreut. Sie können dies erreichen, indem Sie diese Gleichung verwenden, z. B.
für Ihre Palettenindizes, da dies den Rest der Division x durch
r Paletten Länge ergibt , die von 0 bis eins kleiner ist als die Array-Länge der Paletten, wenn sie gerundet wird. Da x sich mit sehr kleinen Schritten bewegt, erhalten Sie dadurch sehr dünne Spalten. Um zu retten, dass Sie x durch r gewünschte Spaltenbreite teilen können. Ich entschied mich, jede Farbspalte zu geben, indem ich
x durch die Breite der Leinwand geteilt durch meine Palettenlänge dividiert habe. Dies kann jemanden gewünschte Werte erzeugen. Eine Constraint-Methode ist also ratsam,
Ihre Indexwertbeschränkung zwischen 0 und dem letzten Index Ihres Farbanrays zu halten. Dies sind einige der entstandenen Kunstwerke aus dieser Färbetechnik. Die nächste Färbemethode ist sehr interessant, da sie wolkenähnliche Texturen liefert, was Ihrer Kunst mehr Tiefe verleiht. Sie können die Steigung erhalten, indem Sie diese Formel verwenden, die dem vorherigen ein Jahr sehr ähnlich ist. Hier verwenden wir den Winkel der Bewegung anstelle der x- und y-Position. Hier sind die Ergebnisse. Last but not least, für das Spielen mit Farbe ist die Verwendung von Farbinterpolation. Ich habe darüber ein bisschen ausführlicher in meinem Rücken
zum Grundkurs im Farbbereich gesprochen ,
zögern Sie nicht, das zu überprüfen, um mehr Informationen zu erhalten. Die Gerechtigkeit, dass Autotext-Farben-Funktion erstellt ein Array von Farben nur zwei Farben. Für mein Design habe ich diese Verlaufsfunktion erstellt, um
eine neue Palette zu erstellen , indem ich zwischen jeder nachfolgenden Farbe in meinem ursprünglichen Array interpoliere. Dies ermöglicht einen glatteren Farbübergang,
wenn sich die Agenten bewegen . Sie können jede der vorherigen Techniken verwenden, um diese neue Palette zu verwenden. Ich verwende diese Formel für meinen Index, um
einen oszillierenden Farbübergang zu erstellen , indem ich meinen Sinus-Funktionswinkel in der Update-Methode um
eins aktualisiere und ihn durch
100 dividiere , um ihn nach oben zu skalieren, damit jede Farbe mehr Zeit auftaucht. Es ist nicht meine Lieblingstechnik mit diesem Programm, aber spielen Sie mit ihm herum. Sie können feststellen, dass ein Wert für Sie. Es gibt auf jeden Fall eine Menge mehr, die Sie in Bezug auf die Färbung Ihrer Designs tun können. Aber ich hoffe, dass diese Techniken genug sind, um
Ihren Horizont zu erweitern und Ihre kreativen Säfte fließen zu lassen. Ich freue mich, zu sehen, was du dir einfällt.
11. Bilder speichern: Jetzt haben wir erstellt, Oliver Designs, statisch und dynamisch. Und es ist Zeit zu sparen. Ich habe darüber gesprochen, deine Designs zu speichern oder einige der Möglichkeiten
, wie er deine Designs in meinen anderen Kursen speichern kann. Aber ich werde es hier wiederholen. Weil es auch erwähnen möchte, wann eine Animation zu speichern,
wann ein einzelnes Standbild zu speichern oder ging, um ein hochwertiges Vektorbild zu speichern. Das erste, was ich normalerweise mache, ist, Standbilder zu speichern, und manchmal mache ich es in meiner Testgröße. So etwa 500 mal 500, wie dieser jetzt. Nur um zu sehen, wie die Dinge aussehen. Vor allem, weil wir jetzt sehen können, dass die Farben wirklich hell sind, obwohl die Farben, die ich gewählt habe, etwas gedämpft sind als diese. Aber aus irgendeinem Grund zeigt die Aussicht hier drüben sehr, sehr helle Farben. Aber sobald Sie es speichern, werden die Farben ein wenig gedämpft sein. Vielleicht willst du sie ändern. Sie mögen tatsächlich diese hellen Farben, also müssen Sie sie aufhellen und es wieder tun. Also das Testen mit einer Größe, die klein ist, wie diese ist ein guter Weg zu gehen. Wenn Sie also nur ein PNG speichern möchten, können
Sie es auf diese Weise tun. Also lasst uns eine neue Registerkarte öffnen. Ich nenne es einfach „Save“. Und jetzt darin möchte ich es speichern, wenn die Tasten gedrückt werden, besonders bei dieser Arbeit, weil ich warten muss, bis es läuft und die Ergebnisse sehen, die ich mag. Und dann will ich es retten. Ich muss bis zu einem bestimmten Punkt warten und auf eine Schaltfläche klicken. So können Sie entweder mit der Maus klicken, wenn Sie möchten. Sie können MousePressed oder
MouseClicked als Funktion auswählen , nach der Sie als Eingabe suchen möchten. Aber was ich mag oder was ich bevorzuge, ist die Taste gedrückt zu verwenden. Der Grund dafür ist, dass, wenn ich das gleiche Bild wie ein Vektorbild speichern möchte, und das ist immer noch ein Raster-Bild, dann ist es viel einfacher für mich, KeyPressed zu verwenden, weil ich dann nach dem Buchstaben s suchen Wenn ich es als PNG speichern möchte, aber dann werde ich nach dem Buchstaben P fragen, um es als PDF zu speichern, das ist das Vektorformat. Hier speichern wir es nur als Rasterbild, als PNG. Also müssen wir nicht viel darüber nachdenken,
aber ich mag es immer noch die Angewohnheit zu behalten, es einfach in eine Tastendruckfunktion zu stecken. Also werde ich einfach die Taste drücken und drücken, ist eigentlich Kapital, okay? Und sie werden nur wenn und dann den Schlüsselwortschlüssel verwenden. Also Taste sucht nach jedem Buchstaben oder einem Zeichen, das Sie auf der Tastatur drücken. Und für Zeichen müssen Sie ein einfaches Anführungszeichen machen. Und ich sage: OK, wenn die Taste die Taste ist, die gedrückt wird, dann tu das. Also werde ich mein PNG speichern, aber ich möchte es zuerst in einer Ausgabedatei speichern. Ich mag es, meine Arbeit zu organisieren. Und dann plus mal TAM und plus Punkt PNG. Der Grund, warum ich Zeitstempel hier benutze
, weil das ist, was ich von generativem Design, dem Buch, gelernt habe. Und seitdem mache ich es, weil es am sinnvollsten ist, wenn Sie Ihre Dateien speichern und es sicherstellt, dass Sie
Ihre älteren Dateien nicht überschreiben , weil es kein Datum und Zeit wie andere gibt. So können Sie Ihre Dateien einfach speichern, ohne sich Gedanken über die Benennung zu machen. Und Sie wissen auch, wann Sie sie tatsächlich erstellt haben. Das ist also auch ein Plus. Jetzt, um die Timestamp-Funktion zu erstellen, schreibe
ich einfach eine Zeichenfolge, weil ich eine Zeichenfolge
zurückgebe, weil ich das hier hinzufüge mit den anderen beiden Strings
verkette. Und bevor wir damit anfangen, möchte
ich Ihnen zeigen, dass ich immer noch keine Dateien gespeichert habe. Das ist also meine Mappe. Ich habe meine Agentendatei, die meine sogar hier drüben ist. Viele Agenten, die die Minivans sind, tippen hier, was der Name der Hauptdatei ist. Und dann mein gespeicherter Punkt P, das ist mein sicherer Tipp hier drüben. Okay, jetzt können wir mit der Erstellung der Zeitstempel-Funktionen fortfahren. Also werde ich nur Zeitstempel machen. Und darin bekomme
ich eine Instanz des Kalenders,
der eine Klasse aus der Java-Utility-Klasse ist. Also lassen Sie es uns zuerst importieren. Es beschwert sich also nicht. Also werde ich einfach etwas namens java.util für Sie nach Lee und dann Kalender importieren. Also jetzt haben wir die Kalender-Klasse. Und ich kann aus der Kalenderklasse sagen, gib mir eine Instanz namens jetzt, und du erstellst sie nicht, indem du neuen Kalender sagst. Du sagst eigentlich Kalender. Also müssen Sie die Klasse erneut aufrufen und dann Dot get Instanz. Und jetzt können wir es formatieren. Also werde ich nur String-Punktformat zurückgeben, damit Sie die Zeichenfolge
formatieren können , die wir von hier erhalten. Innerhalb eines Formats. Sie formatieren, oder Sie schreiben Ihr Format hier mit einer Zeichenfolge. Und dann schreiben Sie hier Ihre Variable hier drüben. Also hier schreiben wir die Formatzeichenfolge. Und die Formatzeichenfolge wird das Prozentzeichen und ein und dann Dollarzeichen sein. Das ist also im Grunde darauf gerichtet. Also sagen wir, nimm den Wert hier rein und hol mir dann das Jahr. Also ist das Jahr T y und das wird mir einen Urin zwei Ziffern bringen. Und dann mache ich das Gleiche. Also werde ich diesen Teil kopieren, weil er dieses Argument hier abzielt, was das erste Argument innerhalb des Formats ist, weil er hier noch mehr Argumente hinzufügen kann. Das wird also das erste Argument sein. Dies ist das zweite Argument dafür, es zu formatieren, aber wir haben nur eins. Also mache ich das einfach noch mal. Und dann dieses Mal will ich den Monat, und dann werde ich es wieder tun und diesmal habe ich den Tag gewonnen und dann werde ich einen Unterstrich machen. Also bekomme ich das Jahr, zwei Ziffern des Jahres, zwei Ziffern des Monats und dann zwei Ziffern des Tages. Und dann will ich einen Unterstrich und dann die Zeit. Wenn Sie also mehrere Bilder am selben Tag speichern, wird
es unterschiedliche Zeiten mit den Sekunden als auch haben. Also, wenn er sogar in der gleichen Minute sparen, wird
es immer noch anders sein und überschreiben Sie Ihre alte nicht. Also müssen wir wieder diese und dann die Stunde einschließen. Und das gibt mir die zwei Ziffern der Stunde und zehn Minuten und dann Sekunden. Wenn wir also sagen, dass wir zwei Ziffern pro Jahr, Monat und Tag sehen werden, und dann werden unsere Minuten
und Sekunden und unsere Minuten und Sekunden nicht Hauptstadt sein. Sie finden dieses oder andere Formate in der Java-Dokumentation. Also, wenn Sie String-Formate sagen, es, Sie bekommen all dies und wie Sie Ihren Spanx formatieren können, und das ist ziemlich viel es. Also jetzt, wenn ich das erneut ausführe, also muss ich es speichern und ausführen. Nun, ich lasse es ein wenig laufen und dann werde ich die S-Taste drücken, während diese aktiviert ist. Also, wenn ich jemals hierher gehe und ich es retten will, wird
es nicht sparen, es wird S hier drüben schreiben. Wir müssen also sicherstellen, dass dies aktiviert ist. Sobald Sie es tatsächlich ausführen, es einfach automatisch aktiviert, so dass Sie einfach die ascii drücken können. Also werde ich die Ascii drücken und jetzt gehen wir zurück in unsere Mappe. Und wir können den Ausgabeordner jetzt sehen, wenn die Ausgabeordner bereits erstellt wurden, dass er ihn einfach darin speichern wird. Wir können das Bild hier sehen, und das Bild hat den Namen, den wir formatiert haben. Es hat also 20. Also 20-20 als 18. Oktober und unterstreichen 1705 Uhr in 26 Minuten und dann 24 Sekunden. Also jetzt, selbst wenn ich zurückgehe und eine andere Version davon speichere, bekomme
ich die andere. Der einzige Unterschied zwischen diesen beiden ist, dass dies in ist um fünf Uhr und 26 Minuten erstellt wurde. Und das wurde um fünf Uhr und 27 Minuten und neun Sekunden Ihrer Buchhaltung erstellt. Das ist der einfachste Weg, um ein gleichmäßiges Bild zu sehen. Aber was, wenn Sie ein qualitativ hochwertiges Bild wünschen, das Sie teilen möchten? Das erstelle ich also nur, wenn ich meine Dateien teste oder meine Bilder teste. Ich teste manchmal sogar mit der Auflösung, die ich brauche, weil vielleicht später tatsächlich die Ergebnisse gefallen haben, die ich von diesen Tests erhalten habe, die ich verwenden möchte. Also ich mag zu ändern oder ich mag Code und 500 von 500. Und sobald ich das Design eingerichtet habe, das
ich mag, nehme ich es einfach bis 1920, bis 1920. Und es wird tatsächlich vom Bildschirm abgeschnitten. Aber Sie können das Design deutlich sehen. Die Leitungen sind ein wenig SAN oder ich habe nicht so viele Agenturen, die ich will. Also kann ich einfach zurückgehen und es verbessern. Und selbst nur einen Teil des Bildschirms zu sehen, wird
das Design nicht so sehr für Sie ruinieren , weil es immer noch sehr zufällig ist. Selbst die Rauschfunktion erzeugt Zufallswerte. Es wird also nicht jedes Mal dasselbe sein. Wenn Sie möchten, dass es gleich ist, können Sie auf jeden Fall den lauten und zufälligen Samen verwenden. Was Sie tun, ist Float Samen und dann lange zufällige Samen. Namen, die Sie nennen möchten. Und dann werde ich hier drinnen sagen, eigentlich werde ich es hier drüben tun. Und ich werde es stattdessen zu einer Ganzzahl machen. Du brauchst keinen Schwimmer. Und dann werde ich hier drinnen zufällige Samen machen. Und es wird den Zufallswert aus den Samen, die wir bekommen. Das ist also der Maximalwert, den wir verwenden wollten. Und dann wird sich das beschweren, weil es
Typ-Dismatch sagt , weil Zufall einen Float-Wert
erzeugen wird , wenn es lang sein muss, weil Zufallssitz so lang. Also werde ich es einfach in eine lange werfen. Und der Grund, warum ich den langen Datentyp verwende, ist, weil der Lärm keinen Float akzeptiert, außer so lange. Also werde ich die hier einfach benutzen. Zufällige Samen und ich werde dasselbe verwenden. Sie können einen anderen für zufälligen Sitz erstellen, aber ich möchte es hier verwenden und dann werde ich den zufälligen Samen drucken. Also, wann immer Sie ein Design finden, das Sie mögen und Sie möchten zurück zu ihm gehen. Sie können diesen Platz hier speichern. Also, jetzt druckte ich den Samen, der im Inneren von Lärmsamen gesät wurde, ist eigentlich 974, und innerhalb der zufälligen Samen ist es 974 als auch. Wenn Sie also dieses Design wiederholen möchten, möchten Sie es
vielleicht in einem größeren Maßstab für jemanden speichern, der es angefordert hat, können
Sie zurück zu den Samen gehen und Sie können die Samen in Ihrem Dateinamen speichern. Okay, ich wollte das nur in das Speichern der Datei einbeziehen, weil es ein Teil davon ist, wie ich meine Datei manchmal gespeichert habe. Speichern wir nun stattdessen eine Animation. Nehmen wir an, ich möchte diese Animation haben, die passiert. Also werde ich auf 500 mal 500 zurückgehen und es tatsächlich zeigen, damit du die Designs besser sehen kannst. Nehmen wir an, ich möchte die Animation speichern. Wenn ich nun einen Rahmen speichern möchte, kann
ich jederzeit S drücken und es wird es speichern. Aber wenn ich die Animation speichern will, mache
ich es hier unten. Also nach der Draw-Funktion, und natürlich muss die Draw-Funktion Schleife laufen, weil ich meine, es ist eine Animation. Und dann werde ich sagen, Frame. So ist es das gleiche wie sicher. Aber hier speichert sicherer Rahmen grundsätzlich jeden Rahmen, der in Ihrem Design passiert ist. Und es wird Zahlen von einem bis zu jedem Frame hinzufügen, an dem Sie anhalten. Also lassen Sie uns sagen, ich möchte Ziffern leisten, Dateiname, weil ich normalerweise zu den Tausenden Frames gehen würde. Also bis zu 2 Tausend, manchmal sogar noch mehr, nur um die Zeit zu bekommen, die ich will. Und dann bekam PNG. Das ist alles, was Sie tun müssen, um die Animation zu speichern. Ich mag es auch eine andere Ausgabe zu geben,
vor allem, wenn ich eine ursprüngliche Ausgabe so oder Ordner, Ausgabeordner, ich meine, also Ausgabe zwei, Ich werde es nennen, weil ich bereits eine Ausgabe habe und dann wird es Belüftung sagen. Und jetzt, wenn ich das ausführe und zu meinen Ausgängen gehe. Zweitens, ich werde sehen, wie die Rahmen gespeichert werden. Also sind wir bis zu 100. Und Sie können sehen, dass der Animationsismus viel langsamer erbt, weil er jeden Frame speichert, so dass er seine Zeit braucht, während er ihn speichert. Und jetzt sagen wir, ich möchte hier und Besitzer stoppen, um diese und Animation zu machen, muss
ich auf das Menü der Verarbeitung gehen. Es wird hier nicht auf dem Bildschirm erfasst, aber ich werde Ihnen zeigen, wo Sie sie finden können. Es ist im Menü „Extras“ genannt Movie Maker. Also, wenn Sie auf Movie Maker klicken, wurde einfach einen Ordner mit Bilddateien in das Feld unten ziehen. Also werde ich einfach den Ordner ziehen, anstatt zu surfen. Und jetzt hat es den Weg. Und es sind standardmäßig 60 Frames pro Sekunde, da dies auf 60 Frames pro Sekunde ausgeführt wird, aber es kann das ändern. Also, wenn ich ein wenig abgehackt sein wollte, kann 12. Bildraten. Ich habe Animationen mit einer Bildrate von einer pro
Sekunde gemacht , um es wie eine Uhr zu bewegen. Und dann möchte ich, dass die Kompression eine Animation ist. Sie können es zu einer JPEG-Sequenz oder PNG-Sequenz machen, aber ich werde nur eine Animation und die gleiche Größe wie das Original machen. Es wird also nicht auf die Breite und Höhe schauen. Mach dir deswegen keine Sorgen. Wenn Sie dies entfernen, werden Sie aufgefordert, zu ändern. Aber wenn wir die gleiche Größe wie das Original sagen, wird
es uns 500 von 500 geben und für dieses. Und dann, wenn Sie eine Audiodatei
in den Film ziehen möchten , den Sie erstellen oder die Animation. Und Sie können es einfach nach hier ziehen. Und jetzt kann ich einfach sagen, erstellen Sie den Film und es wird mich fragen, wo ich ihn speichern soll. Also werde ich es einfach innerhalb desselben Ordners speichern. Ich werde es einfach hier aufsparen. Jetzt ist es fertig, den Film hier zu kreieren. Das einzige Problem, das ich in letzter Zeit mit diesem gefunden habe, mit den neueren Mac-Versionen ist, dass es nicht in kurzer Zeit zu spielen. Also, was ich tue, ist, einfach zu jeder Software zu gehen, die jede Filmdatei in ein mp4
ändert und Interesse das umwandelt. Also ja, so ziemlich wie Sie eine Animation erstellen. Und jetzt reden wir über das Speichern eines PDF- oder Vektorformats. Speichern einer PDF-Datei zum Speichern eines Vektorformats erzeugt
sehr, sehr hochwertige Bilder, da er dann Ihre PDF-Dateien in PNG-Bilder umwandeln kann. Und das wird eine viel höhere Qualität sein, als es einfach sofort zu sparen. Und ohne auch alle Änderungen vornehmen zu müssen, wenn Sie die Größe Ihres Canvas ändern. Also im Grunde, wenn ich das als 500 mal 500 speichern möchte , wird es nicht als 500 mal 500 speichern, weil es ein sehr hochwertiges Bild sein wird , weil es
es als Vektorformat anstelle eines Rasterbildes gespeichert hat. Also, wenn ich es speichern möchte, werde
ich einfach alles kopieren und einfügen, was wir hier erstellt haben. Also muss ich den Zeitstempel nicht wieder erstellen. Und ich werde eine neue Registerkarte erstellen und es einfach speichern nennen. Und dann mache ich das Gleiche hier drüben. Das muss ich auch. Der Kalender. Ok, jetzt ist alles gleich. Und wenn ich das erneut
ausführe, kann ich das leicht speichern und es wird sparen. Also jetzt meine Ausgabe hier drüben und Sie können sehen, was das Bild sehr klein ist. Aber da dies ein statisches Bild ist, kann
ich leicht ein PDF machen. Also, um eine PDF-Datei zu machen, oder ich speichere eine PDF-Datei, werde
ich nur das gleiche tun, was ich hier getan habe. Aber dieses Mal werde ich tun, wenn Schlüssel ist P. Also, wenn es Pete ist und ich möchte es
als PDF speichern und es wird nicht sein, dies wird ein Startaufzeichnung sein. Und Rekord. Also beginne ich hier mit der Aufnahme. Und dann, wenn ich diesen Schlüssel drücke, will
ich, dass er erforderlich endet. Und dann beginnen Sie mit dem Einvernehmen. Es erfordert mehr Argumente und Record erfordert keine Argumente, also muss ich nur PDF als Formate machen und dann werde ich tun, was ich hier getan habe. Also kopiere ich diesen Teil einfach und füge ihn ein. Und dann mache ich stattdessen hier PDF statt PNG. Es ist also im Grunde das Gleiche. Ich wollte mich innerhalb meines Ausgabeordners befinden. Und die Zeitstempelfunktion ist auch hier drüben. Aber jetzt, wenn ich das speichern möchte, wird
es mein Bild nicht speichern. Also sagen wir p und dann schreibe ich E. Zunächst einmal wird
es nicht speichern, weil wir vergessen haben, die PDF-Bibliothek zu importieren zeigte eine PDF-Bibliothek ist im Grunde ein Verarbeitungsbibliotheken Import aus der Verarbeitung dot PDF. Und dann will ich alles. Und dann, wenn ich das wieder ausführen, so dass ich einfach p und dann werde ich e. Und jetzt ist das mein PDF. Mein PDF ist also eine leere Leinwand. Es hat gar nichts getan, weil es mit der Aufnahme begann. Aber dann gibt es hier nichts, um es aufzunehmen, weil es hier nicht danach sucht. Es muss wissen, was
aufgezeichnet wird , und das muss zwischen dem Start-Record und dem Record enthalten sein. Aber es gibt nichts wirklich zwischen ihnen. Also werde ich nur die Setup-Funktion aufrufen, weil ich hier alles benötige, weil ich die Hintergrundfarbe brauche. Ich brauche die Anzahl der Agenten oder die Initialisierung der Agenten, und dann brauche ich die Bewegung hier drüben. Also werde ich einfach Setup machen und dann zeichnen. Und jetzt, wenn ich das noch einmal ausführe und dann klicke ich auf den PI-Buchstaben, und dann wirst du sehen, dass das PDF erstellt wurde,
aber es ist noch nicht fertig, weil wir die Aufnahme nicht wirklich beendet haben. Wenn ich also wieder gehe, aktiviere das und drücke dann das E, wirst
du sehen, wie sich das in das Design ändert. Und dann können Sie sehen, dass es ein sehr hochwertiges Bild ist. So können Sie dies in ein PNG umwandeln. Es gibt viele Plattformen, auf denen Sie das tun können. Normalerweise mache ich es innerhalb meines Mac, weil ich eine Aktion gutschreibe , bei der ich dies direkt hier in ein PNG umwandeln kann. Und dann speichert es es in einem Ordner, den ich gebeten habe, innerhalb meiner Aktionen zu speichern. Und es speichert es als PNG. Das ist eine ganz andere Geschichte, aber es zu ändern oder diese in ein P&G umzuwandeln, ist keine wirklich schwierige Aufgabe. Und Sie können eine Menge von Plattformen finden, die tun. Also, ja, so ziemlich wie Sie ein Vektorformat speichern. Wenn Sie dies als Vektor öffnen möchten, können
Sie einfach klicken oder mit der rechten Maustaste klicken und dann mit Adobe Illustrator öffnen. Und es wird es für dich öffnen und dir zeigen, wie du die Arbeit in meinem anderen Kurs öffnest und manipulierst. So kannst du das in meinem Intro bis Januar der Kunst verfolgen, wo du ein Gitter erstellen kannst und dort lernen kannst,
wie du es in Illustrator öffnest und es bearbeiten kannst. Da.
12. Inspiration und weitere Informationen: Egal, wie viele Beispiele und geben Sie Ihnen, ich bin nur eine Person mit einem Gehirn. Also für Inspiration, was Sie mit Informationen aus diesem Kurs tun können, besuchen Sie oder Ursache Offene Verarbeitungsseite. Er hat eine Menge unglaublicher Arbeit mit Lärm. Einer meiner absoluten Favoriten ist diese Uhr eins. Er nutzt die Rauschfunktion, um sein Bild zu zerstören. Es sieht sehr kompliziert aus, aber der Code ist ziemlich klar und unkompliziert. Dieser Künstler verwendet p5 js, was der Verarbeitung in JavaScript-Form entspricht. Es ist sehr einfach zu entschlüsseln, da beide die gleichen Methoden verwenden. Aber wenn Sie irgendwann stecken bleiben, zögern Sie nicht, mich im Diskussionsabschnitt zu fragen oder überprüfen Sie beide Sprachen Dokumentation für einige Antworten. Jetzt gehe ich immer wieder zur Arbeit von Tyler Hobbes zurück, da er mich nie aufhört zu überraschen. Er hat einen Artikel und die Arbeit mit Lärm und Strömungsfelder, die
einige wertvolle Informationen und
interessante Techniken der Abfall hat einige wertvolle Informationen und und verzerren die Agenten Bewegungen. So wie er ist, ist das Flussfeld unterscheidet sich von der Art, wie ich es benutze. Wenn Sie die Art der Code-Website von Daniel Sendung besuchen, die eine weitere große Referenz für die Arbeit mit Flussfeldern ist. Sie können besser verstehen, wie Tyler Hobbes Flussfelder verwendet. Das Konzept hier in diesem Kurs, dort, und die Referenzen sind ähnlich, aber der Prozess ist anders. Wenn Sie weitere Referenzen finden, teilen
Sie diese bitte mit Ihren Kurskollegen. In den Notizen dieses Videos oder im Diskussionsbereich bin
ich immer auf der Suche nach neuen Inspirationen und Herausforderungen. Zögern Sie nicht, Ihren Prozess mit allen
im Diskussionsabschnitt oder in Ihren Projektnotizen zu teilen . Es ist schön, konstruktives Feedback zu bekommen und zu geben. Lasst uns gegenseitig helfen, Fortschritte zu machen.