Processing ist eine Computersprache, die von bildenden Künstlern verwendet wird, um generative und interaktive Kunst zu schaffen. Neben dem Erstellen von Grafiken auf dem Bildschirm wird die Sprache auch verwendet, um alle Arten von interaktiven Skulpturen und physischen Künsten herzustellen. Zu Beginn ist es schwer zu verstehen, wofür es ist, aber es genügt zu sagen, dass die Kunstwelt Processing als Programmiersprache der Wahl akzeptiert hat.

In diesem Artikel sehen wir, wie die Band The Sinatra Test ein Cover für ihr bevorstehendes Album erstellt hat, das über eine mit der Musik vertriebene Mac-App für jeden Benutzer eine einzigartige Version erstellt.

Album Cover Generator

Für ihr bevorstehendes Album "ambientertainment" wollte The Sinatra Test ein Cover-Design haben, das die generierte Natur der Musik auf dem Album widerspiegelt. Die Verarbeitung bietet eine einfache und leicht zu erlernende Methode, um genau dies zu tun.

Der Code für das Albumcover ist zum Zeitpunkt des Schreibens noch nicht ganz fertig, aber sie waren zufrieden genug mit der Ausgabe, um uns die bisherigen Ergebnisse anzusehen und den Code für diese frühe Version zu veröffentlichen, damit die Leute es selbst ausprobieren können.

Der Code ist sehr kurz und einfach, aber es macht den Job. In dieser aktuellen Version auf dem Mac erstellt die Ausführung der App eine Variation des Designs und speichert sie am selben Ort wie die App.

Um Processing zu installieren, gehen Sie zur Download-Seite auf der Site und klicken Sie auf den Link für Ihre Plattform. Wenn Sie heruntergeladen haben, entpacken Sie die ZIP-Datei und ziehen Sie die Anwendung in Ihren Anwendungsordner.

Mach es zu einem PDF

Der erste Schritt besteht darin, die PDF-Erstellungsbibliothek zu laden:

 Importabwicklung.pdf. *; 

Dann stellen wir die Größe der Ausgabe auf dem Bildschirm ein, in diesem Fall 500 Pixel im Quadrat:

 Größe (500, 500); 

Offensichtlich ist die Ausgabe eine PDF-Vektorgrafik, so dass sie auf jede beliebige Größe skaliert werden kann, ohne dass es zu Degradierungen oder Zeilensprüngen kommt.

Als nächstes müssen wir einen Dateinamen für die resultierende PDF definieren und beginnen, die Grafiken aufzunehmen, wie sie für die Speicherung im endgültigen Bild erstellt werden:

 beginRecord (PDF, "cover.pdf"); 

Die Farben des Bildes werden dann definiert. Der Hintergrund ist schwarz:

 Hintergrund (0); 

Wenn Sie Zweifel haben, Randomize

Um die Farben der Stränge zu erzeugen, wurde beschlossen, dass sie hauptsächlich grün, aber mit Variationen sein sollten. Die Strategie bestand darin, dass das RGB der Farben zufällig gewählt wurde, wobei das grüne Element immer höher als das rote oder das blaue Element sein konnte. Grün kann den ganzen Weg bis zu 256 gehen, aber die anderen beiden Kanäle sind auf 100 begrenzt.

Also definieren wir die floatenden Variablen rot, grün und blau mit folgenden Werten:

 float rot = zufällig (100); float grün = zufällig (255); Float blau = zufällig (100); 

Dies erzeugt jedes Mal einen neuen Farbverlauf, jedes Mal grün, aber mit verschiedenen Graden von Rot, Grün und Blau, um den Farbton einzustellen. Es gibt immer mehr Grün als Rot oder Blau.

Haare, Blätter oder Schnittlauch? Wer weiß!

Jetzt der Code zum Zeichnen der Stränge. Das Liniengewicht jedes Stranges wird randomisiert, und die horizontale Position der Ober- und Unterseite der Stränge wird ebenfalls zufällig innerhalb bestimmter Parameter variiert. Die Stränge sind zu 60% durchscheinend, was zu einem angenehmen Haarstrang-Effekt führt:

 für (int i = 0; i <500; i ++) {float r = zufällig (10); SchlaganfallGewicht (r); Strich (rot, grün, blau, 60); Gleitkomma-Offset = r * 5, 0; Linie (i-20, 500, i + Offset, 0); } 

Jetzt ein bisschen Text

Als nächstes muss die Schriftart erstellt werden. Für die Verarbeitung müssen Schriften in ein .vlw-Format konvertiert werden. Dies geschieht über ein Gesicht im Schriftartenverzeichnis auf dem Host-System.

Hinweis: Dies ist ein Bereich, an dem die Band noch arbeitet. Bei Web-Apps kann die konvertierte Schriftart auf dem Server gespeichert werden und niemals auf dem System des Benutzers installiert werden.

 PFont Schriftart; font = createFont ("CooperBlackMS", 24); TextFont (Schriftart); 

Sobald die Schriftart erstellt wurde, wird der Text in das Bild geschrieben, der Name der Band oben links und der Name des Albums unten rechts:

 Text ("der Sinatra-Test", 10, 20); Text ("ambientertainment", 250, 490); 

Anscheinend hat es viel Versuch und Irrtum gebraucht, den Text richtig zu positionieren, und die scheinbar willkürlichen Koordinaten sind diejenigen, die am besten auf dem Bildschirm aussahen.

Wickeln Sie es

Dann wird die Aufzeichnung der PDF beendet, das Programm effektiv gestoppt und das fertige Bild mit dem oben definierten Dateinamen auf die Festplatte geschrieben:

 endRecord (); 

Schließlich gibt das Programm eine Nachricht an die Konsole aus, um anzuzeigen, dass es beendet ist:

 print ("Fertig! Neues Album erstellt"); 

Verfeinerungen

Die endgültige Version der App wird einige Verfeinerungen haben, wie eine eingebettete Schriftart und eine etwas interaktivere Benutzerschnittstelle, die es dem Benutzer vielleicht erlaubt, einige Parameter voreinzustellen.

Außerdem schreibt das Verarbeitungsprogramm auf dem Mac standardmäßig Java, um Apps zu erstellen, für die es in dieser Instanz verwendet wurde. Sie können jedoch auch andere Modi wie Coffeescript, Javascript und Python verwenden, wenn Sie dies wünschen. Ebenfalls untersucht wird eine für Javascript kodierte Version der Software, die das Albumcover über eine Webseite erstellt und auf den Computer des Benutzers lädt.

Die Kunst mit Hilfe von Software zu generieren, ist ein wachsender Trend in der modernen Kunst. Hattest du Erfahrung in Verarbeitung oder generativer Kunst? Teilen Sie uns Ihre Gedanken in den Kommentaren mit.