Rendern in einer Shell (4)

Gerenderter Parfum-Flakon (Test)

Heute wollte ich nochmal – als Test – die obige Szene rendern, aber irgendwie hat Blender mich falsch verstanden und eine Animation gerendert, obwohl ich als Anzahl der Frames ‚1‘ angegeben habe. Mysteriös. Ich habe mich noch gewundert, weshalb Cycles so lange rendert. Hier nochmal zur Erinnerung, die entsprechende Befehlszeile:

blender -b Chanel\ No.\ 5\ 13o.blend -o //render_ -F PNG --engine CYCLES -x 1 -a

Hmmm, vielleicht muß ich das -a weglassen. Komisch nur, dass es beim ersten Mal auch geklappt hat. Ich kann es mir nur so erklären, dass ich zufälligerweise die Shell geöffnet habe, als Cycles gerade mit dem ersten Frame fertig war – oder?

Advertisements

Farbverläufe mit ImageMagick

Mit ImageMagick gerenderter Farbverlauf

Farbverläufe kann man auch ohne Bitmap-Editor erzeugen, und zwar mit dem Shell-basierten ImageMagick. Der obige Farbverlauf aus vier Farben wurde mit folgendem Befehl erzeugt:

convert -size 750x750 gradient:yellow-blue \
\( gradient:black-lime -rotate -90 \) \
-compose CopyGreen -composite gradient_colormap.jpg

Weshalb da gradient:black-lime steht, ist mir allerdings nicht klar, kommt Schwarz doch überhaupt nicht vor. Tja … Ich habe versucht, diesen Verlauf im Gimp 2.10 zu erzeugen, aber das ist gar nicht so einfach. Ich habe es mit dem Modus „Multiplikation“ versucht, aber ohne großen Erfolg. Ok, jedenfalls hier noch eine Übersicht der in ImageMagick verfügbaren Farbnamen.

Rendern in einer Shell (2)

Gerenderter Parfum-Flakon (Test)

So, nach dem Ausflug in den Film wieder zurück zu Computergrafik. Oben seht ihr das Ergebnis meines ersten Versuchs, in einer Shell zu rendern. Nach vielen, vielen Zeilen zum aktuellen Status des Renders (oder heißt es „Rendering“?) kam schließlich

Saved: '/home/claus/Grafik/3D/scenes/render_0001.png'
Time: 01:55:07.77 (Saving: 00:00.19)
Blender quit

Und: Die Grafik ist deutlich besser geworden, als ich gedacht hatte. Bei meinem letzten Versuch, dieselbe Szene in Blender zu rendern (d. h. mit GUI), hat es mir die gesamte Grafik total verspult. Ich weiß wirklich nicht, was da los war. Bei näherem Hinsehen mußte ich leider feststellen, dass auch bei diesem Render der obere Teil des Flakons nicht sauber gerendert wurde. Bleibt nur noch, das in Ordnung zu bringen, dann das Parfum in den Flakon zu bekommen, diesen oben zu schließen und die schwarze Kappe oben draufzusetzen.

Rendern in einer Shell

Wenn ich mit dem in Blender integrierten Renderer Cycles eine Szene rendern will, ist der Nachteil, dass ich eine ganze Weile nicht mit Blender arbeiten kann. Deshalb habe ich jetzt (und wie es scheint, erfolgreich) versucht, Cycles über eine Shell (Textkonsole) aufzurufen. Der Befehl, den ich benutzt habe, lautet dabei 'blender -b Chanel\ No.\ 5\ 13o.blend -o //render_ -F PNG --engine CYCLES -x 1 -a'. Die Backslashs werden durch die Leerzeichen im Dateinamen nötig. Erzeugt werden sie entweder über die TAB-Taste oder über [AltGr+Backslash]. Nun rendert Cycles vor sich hin, während ich wieder in Blender arbeiten kann.

Tip: Dateiformate konvertieren

Wenn man alle Grafikdateien in einem Ordner in ein anderes Format konvertieren will, geht das z. B. mittels ImageMagick, das üblicherweise aus einer Shell heraus aufgerufen wird. Die Installation unter Ubuntu geht über 'sudo apt-get install imagemagick'. Um dann im nächsten Schritt die Grafiken innerhalb eines bestimmten Verzeichnisses zu konvertieren, eine Shell (z. B. die bash) öffnen und 'mogrify -format [Zielformat] *.[Ausgangsformat]' eingeben. Dann dauert es eine Weile, bis alle Grafiken konvertiert worden sind. Schließlich, wenn die Konvertierung beendet ist, erscheint der System-Prompt und man kann sich die fertig konvertierten Grafiken mittels 'display [Grafik]' anschauen. Voilà!

Grafikformate konvertieren

Logo von ImageMagick

Zum Alltag jedes Grafikers gehört das Konvertieren von einem Grafikformat in ein anderes. Hierbei leistet ImageMagick unschätzbare Dienste. Diese Sammlung von Werkzeugen wird aus einer Shell heraus aufgerufen; es gibt allerdings auch eine ganz rudimentäre Version mit einer grafischen Oberfläche, die aber längst nicht den beeindruckenden Funktionsumfang der Shell-Version aufweist. Ein weiterer Vorteil von ImageMagick ist das Aufrufen seiner Funktionen via Shell-Script. Darüber hinaus gibt es noch eine ganze Reihe weiterer Schnittstellen für die verschiedensten Programmiersprachen. Ein einfaches Beispiel einer Konvertierung wäre etwa 'convert -Option [Ausgangsdatei] [Zieldatei]'. Um beispielsweise eine Grafik im PNG-Format in ein JPG zu konvertieren, wäre ein denkbares Kommando 'convert -quality 90 [Ausgangsdatei].png [Zieldatei].jpg'. Und um sich die konvertierte Datei anzuschauen, genügt das Kommando 'display [Dateiname]'. Welche Grafikformate ImageMagick konvertieren kann, erfahrt ihr auf folgender Seite. (Ich habe bei zwanzig aufgehört zu zählen. Es sind wirklich sehr viele – der ImageMagick-Website nach über 200. Zu beachten ist allerdings, dass ImageMagick lediglich 2D-Formate – und z. B. auch AVI-Videos – unterstützt. Das DXF-Format zum Austausch von CAD-Daten ist leider nicht dabei, wie auch alle 3D-Formate fehlen.) ImageMagick kann aber noch viel mehr als nur konvertieren, wovon ihr euch hier einen Überblick verschaffen könnt. Meiner Ansicht nach ist ImageMagick denn auch sehr zu Unrecht so wenig bekannt.