OpenSCAD – Video aus Animation erstellen

OpenSCAD stellt mächtige Funktionen bereit, auch wenn die grafische Oberfläche das nicht immer unbedingt erahnen lässt. Animationen lassen sich über die Oberfläche erzeugen, allerdings nicht als Video abspeichern. In diesem Artikel werde ich die Umwandlung in ein mp4 beschreiben.

Das Erstellen einer Animation ist relativ leicht. Dazu muss im Reiter View der Menüpunkt Animate aktiviert werden. Anschließend erscheint unter der 3D Darstellung des Modells eine Leiste mit einem Feld für Time, FPS und Steps.

Time gibt den aktuellen Zeitpunkt in der Animation an. Dieser Parameter zählt von 0 bis 1 hoch

FPS (Frames per Second) sollten auf 30 oder mehr eingestellt werden, damit eine Flüssige Animation entsteht

Steps definiert die Anzahl der Schritte, die die Animation für eine Zeitperiode von 0 bis 1 machen soll

In diesem Beispiel wollen wir eine etwas aufwändigere Zeichnung um die Z Achse drehen, wobei dafür im wesentlichen drei selbst erstellte Module aufgerufen werden, die hier nicht näher beschrieben werden.

translate([0,0,30]) unibody();
translate([0,0,-10]) backplate();
translate([0,0,15]) electronics();

Wenn wir nun alle Felder in der Animationsleiste ausfüllen, bewegt sich noch nichts. Allerdings erhalten wir im Design Zugriff auf die Variable $t. Die zählt von 0 auf 1. Da eine Umdrehung bekantlich 360° hat, müssen wir diesen Wert also mit 360 multiplizieren. Da gleich drei Objekte auf einmal gedreht werden sollen, werden diese noch mit union() zusammengefasst.

rotate([0,0,$t*360]) union() {
    translate([0,0,30]) unibody();
    translate([0,0,-10]) backplate();
    translate([0,0,15]) electronics();
}

Nun sollte sich das Objekt bereits drehen. Da OpenSCAD nicht direkt Videos exportieren kann, müssen wir zunächst Einzelbilder exportieren. Dies erreichen wir, indem wir den Haken bei Dump Pictures setzen. Vorher sollten das Vorschaufenster so groß wie möglich gezogen werden. Alternativ sollte auch eine Erzeugung auf der Kommandozeile mit einstellbarer Bildgröße möglich sein.

Wenn der Timer jetzt einmal durchgelaufen ist, können wir Dump Pictures wieder abschalten und das Video erzeugen. Hierfür verwende ich mencoder. Auf Debian basierten System kann das Tool einfach per apt-get install mencoder nachinstalliert werden. Nun muss auf der Kommandozeile noch in das Ausgabeverzeichnis gewechselt werden. Anschließend kann nach Anpassung der Auflösung der folgende Befehl ausgeführt werden:

mencoder "mf://*.png" -mf w=1600:h=1044:fps=30 -o animation.mp4 -ovc lavc -lavcopts vcodec=mpeg1video:vbitrate=4000

Anschließend befindet sich die entsprechende Animation als mp4 im Arbeitsverzeichnis. Nachfolgend noch ein Beispiel:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.