Computergrafik

Blender Python Scripting

Blender Procedural Modeling | | Blender Links

Manchmal möchte man aufwendige Arbeiten automatisieren oder ein bestimmtes Ergebnis erreichen, das händisch nicht möglich ist.

Hierzu bietet sich an, Python zu verwenden. Dies geschieht im Arbeitsbereich “Scripting” der Programmieroberfläche von Blender:

Hier gibt es zwei Möglichkeiten:

  1. FĂĽr schnelle Tests mit nur einer Codezeile: Links unten die Python Console
  2. Für aufwendige, lange Anweisungsblöcke: Mittig der Text Editor

Wir werden uns hier lediglich die Python Console ansehen.

Die Position, Orientierung und Skalierung von Objekten ist in den Transformationsknoten in Form einer 4×4 Matrix gespeichert. Um diese sogenannte Modellierungsmatrix anzuzeigen, kann man den folgenden Befehl verwenden:

bpy.data.objects['Cube'].matrix_world

Es erscheint als Ausgabe die 4×4 Modellierungsmatrix, welche die Punkte des aktuellen Objects von Objektkoordinaten zu Weltkoordinaten transformiert (später dazu mehr):

Matrix(((1.0, 0.0, 0.0, 0.0),
        (0.0, 1.0, 0.0, 0.0),
        (0.0, 0.0, 1.0, 0.0),
        (0.0, 0.0, 0.0, 1.0)))

Wir können nun z.B. den Würfel per Code an eine andere Stelle in der Welt setzen:

bpy.data.objects['Cube'].location = Vector([10,0,0])

Nun enthält die Modellierungsmatrix des Würfels folgende Einträge:

Matrix(((1.0, 0.0, 0.0, 10.0),
        (0.0, 1.0, 0.0, 0.0),
        (0.0, 0.0, 1.0, 0.0),
        (0.0, 0.0, 0.0, 1.0)))

Für schnelle Tests von Rechnungen kann also Blender hervorragend genutzt werden. Weitere Details zum Scripting mit Blender werden in dieser Vorlesung leider nicht behandelt, es handelt sich hier jedoch prinzipiell um ein sehr mächtiges Werkzeug!


Blender Procedural Modeling | | Blender Links

Options: