Blender Dokumentation: Koordinatenräume

Aus Wikibooks
<<<Zurück
Wie man 3D-Objekte erstellt
Inhaltsverzeichnis

Handbuch durchsuchen

Weiter>>>
Objektzentrum und Pivot-Punkt


Diese Seite bezieht sich auf Blender v2.46
Abbildung 1: Objekte in einem dreidimensionalen Raum. Im Zentrum der Koordinatenursprung der Weltkoordinaten.

In einem dreidimensionalen Raum muss der Ort eines Objektes durch drei Angaben festgelegt werden. Diese drei Angaben nennt man die Koordinaten des Ortes.

In Blender wird der Ort durch folgende Konvention bestimmt:

In der Mitte des Koordinatenraumes befindet sich sein Ursprung, der Nullpunkt. Man verwendet nun den Abstand von diesem Nullpunkt in den drei senkrecht aufeinanderstehenden Raumrichtungen um die Position des Objektes festzulegen. Die drei Raumrichtungen werden als X, Y und Z-Achse bezeichnet und durch die Farben rot, grün und blau gekennzeichnet. In der Ansicht von vorne zeigt die X-Achse (rot) nach rechts, die Y-Achse (grün) nach hinten und die Z-Achse (blau) nach oben.


Globale und lokale Koordinaten[Bearbeiten]

Die Koordinaten in diesem Koordinatenraum werden als globale Koordinaten (Weltkoordinaten) bezeichnet. Die Welt hat einen festen Ursprung und eine feste Ausrichtung, aber wir können sie aus verschiedenen Blickwinkeln betrachten.

Die drei Koordinaten im Weltkoordinatenraum würden im Prinzip völlig ausreichen, wenn wir immer nur mit einzelnen Punkten arbeiten würden. Ein Objekt wie die in Abb. 1 dargestellte Tasse besteht aber nicht aus einem Punkt, sondern kann aus beliebig vielen (in diesem Fall aus 171) Punkten bestehen. Es ist daher viel praktischer, noch einen zweiten Koordinatenraum einzuführen: die lokalen Koordinaten. Die Punkte aus denen die Tasse aufgebaut ist, werden in Bezug auf die lokalen Koordinaten definiert. Der Ursprung der lokalen Koordinaten ist das Objektzentrum. Es spielt später für die Form der Tasse überhaupt keine Rolle mehr, wo sich das Objekt im globalen Koordinatenraum befindet bzw. orientiert ist.

Man kann also ein dreidimensionales Objekt durch die definierenden Punkte im lokalen Koordinatensystem, die Ortsangabe des Objektzentrums und die Drehung seiner lokalen Koordinaten gegenüber den Weltkoordinaten beschreiben.

Globale Koordinaten für Objekte mit Parent[Bearbeiten]

Abbildung 1b: Ein Parent dient als Quelle der globalen Koordinaten für sein Child-Objekt, hier die Tasse.

Besitzt ein Objekt einen sog. Parent, so liegt der Weltmittelpunkt des Objektes nicht mehr an der Position 0/0/0 im globalen Koordinatensystem, sondern im Mittelpunkt des Parents, der nun den neuen Weltmittelpunkt für das Objekt darstellt. Die Ausrichtung der Weltkoordinaten entspricht nun der Ausrichtung des Parents. Wird der Parent verschoben oder gedreht, bewegt sich das Objekt in seiner Funktion als Child automatisch mit. Auf diese Weise animiert man Drehungen um beliebige Achsen.

In Abbildung 1b ist die Tasse das Childobjekt, das rechte Koordinatenkreuz zeigt die Ausrichtung des Parents. Das Child hat keine lokale Rotation.



Ansichtskoordinaten [View][Bearbeiten]

Abbildung 2: Ansichtskoordinaten und Ansichtsebene [Projection Plane]

Bezieht man den Betrachter der Szene in die Überlegungen ein, entsteht ein weiterer Koordinatenraum: die Ansichtskoordinaten [View]. In Abb. 2 wird der Betrachter durch die Kamera symbolisiert. Dabei zeigt die Z-Achse der View-Koordinaten in orthogonaler Projektion immer direkt auf den Betrachter. Die X-Achse dieses Koordinatenraumes zeigt nach rechts, die Y-Achse nach oben (Abb. 3).

Abbildung 3: Ansichtskoordinaten in Aufsicht.

Tatsächlich arbeitet man immer im Ansichtskoordinatenraum, wenn nichts anderes festgelegt wird. Das ist insbesondere dann praktisch, wenn man die Ansicht vorher auf eine bestimmte Art und Weise ausgerichtet hat. Hat ein Objekt bspw. ein schräges Dach, und ich möchte ein Fenster in das Dach einbauen, wäre es sehr kompliziert das Fenster im lokalen Koordinatesystem des Objektes zu bauen. Ich kann aber die Ansicht senkrecht auf das Dach ausrichten, und dann in dieser Ansicht arbeiten.

Arbeitet man in einer der drei Standardansichten (Front/Top/Side) stimmen die Richtungen der Ansichtskoordinaten und der Weltkoordinaten überein, in der Frontansicht sind die Achsen dann sogar deckungsgleich. Daher findet man sich in den Standardansichten besonders schnell zurecht und kann am einfachsten modellieren.


Normal-Koordinaten[Bearbeiten]

Abbildung 4: Normal-Koordinatenräume für Flächen. Die Normale ist in blau gezeichnet.

Auch wenn Blender ein 3D-Programm ist, sichtbar sind doch immer nur Flächen. Die Ausrichtung der Flächen spielt für eine Vielzahl von Anwendungsbereichen eine Rolle. So erscheint es uns aus unserer täglichen Erfahrung völlig selbstverständlich, dass z.B. ein Buch flach auf einem Tisch liegt. Dazu müssen die Fläche des Tisches und die Oberfläche des Buches parallel zueinander sein. Wenn wir in einem 3D-Programm ein Buch auf einen Tisch legen wollen, müssen wir selbst dafür sorgen, dass die Flächen parallel sind.

Die Ausrichtung einer Fläche kann sehr effizient mit Hilfe der sog. Flächennormale beschrieben werden. Diese steht immer senkrecht auf der Fläche. Sind mehrere Flächen ausgewählt, wird die resultierende Normale aus den Flächennormalen der einzelnen Flächen gemittelt. In Abb. 4 sind die Normal-Koordinaten für die sichtbaren Flächen eingezeichnet.

Dieses Konzept lässt sich auf einzelne Objektpunkte übertragen: auch wenn die Punkte selbst keine Ausrichtung besitzen, so kann man ihre Normale mitteln aus den Normalen der angrenzenden Flächen.

Abbildung 5: Normal-Koordinatenräume für Kanten.

Bei Kanten macht die Definition einer Normalen wieder mehr Sinn: die Normale läuft entlang der Kante. Wenn Sie z.B. ein Objekt entlang einer Linie abknicken wollen, definiert die Normale dieser Linie genau den Koordinatenraum den Sie brauchen.



Auswahl und Verwendung unterschiedlicher Koordinatenräume[Bearbeiten]

Abbildung 6: Auswahl der Transform Orientation.

Es gibt vier Grundoperationen (Transformationen), die Sie mit Objekten durchführen können: Verschieben, Drehen, Skalieren und Spiegeln. Die als Standard verwendeten Koordinatenräume sind dabei unterschiedlich. Bei Bedarf kann der Koordinatenraum gewechselt werden.

Eine einfache und visuell anschauliche Methode Operationen in verschiedenen Koordinatenräumen durchzuführen, ist die Verwendung des 3D-Transform-Manipulators. Über die Auswahl der Transform-Orientation in der Werkzeugleiste des 3D-Fensters (Abb. 6) stellen Sie den für den Transform-Manipulator verwendeten Koordinatenraum ein. Die Auswahl des Koordinatenraums ist auch über View->Transform Orientations... möglich, oder über das Orientation-Popup-Menü mit Alt-Leertaste.

Der eingestellte Koordinatenraum wird auch verwendet, wenn Sie eine Transformation über die Tastatur durch zweimalige Auswahl der Achse einschränken.

Verschieben und Drehen
Objekte werden zunächst im Ansichtskoordinatenraum [View] verschoben und rotiert.
  • Drücken Sie im Bewegungsmodus oder bei der Drehung eines Objektes eine der Tasten X/Y/Z einmal, so wird die Bewegung auf die entsprechende globale Achse beschränkt.
  • Mit Shift-X/Y/Z wählen Sie jeweils die beiden anderen Achsen aus, bei Shift-X also eine Transformation beschränkt auf die Y- und Z-Achse.
  • Drücken Sie die Taste zweimal (also z.B. X-X), wird die Bewegung auf die entsprechende Achse des unter Transform-Orientation eingestellten Koordinatenraums beschränkt. Ist dort Local oder Global eingestellt, wird die Transformation im lokalen Koordinatenraum durchgeführt, ist dort View eingestellt im Ansichtskoordinatenraum usw. Die Einschränkung der Bewegung auf zwei Achsen funktioniert ebenfalls mit Shift.
  • Klicken Sie während einer Transformation mit MMT, wird eine der globalen Achsen ausgewählt, mit gehaltener MMT können Sie durch Mausbewegung eine der anderen globalen Achsen auswählen.
Ein Blenderobjekt lässt sich über das Menü Object->Transform->Align to Transform Orientation... an einem der Koordinatenräume ausrichten, das Objekt wird dabei so gedreht, dass der lokale Koordinatenraum an dem ausgewählten Koordinatenraum ausgerichtet ist.
Wollen Sie ein Objekt an den globalen Koordinaten ausrichten, dabei aber die Ausrichtung der Objektdaten behalten, verwenden Sie Object->Clear/Apply->Apply Scale/Rotation to ObData. Ein Anwendungsbeispiel hierfür ist z.B. die Modelllierung eines Menschen, die eventuell in Aufsicht erfolgt ist. Dann liegt der Mensch auf dem Rücken und schaut in Richtung Z-Achse. Wenn Sie das Modell nun "aufrecht" stellen, zeigt die lokale Z-Achse des Modells in Richtung der globalen Y-Achse. Um die Koordinatensysteme zur Deckung zu bringen (was Ihnen später viel Ärger beim Animieren ersparen wird), verwenden Sie diese Funktion.
Skalieren
Skaliert wird zunächst entlang der drei lokalen Achsen. Die Einschränkung der Achsen geschieht genauso wie beim Verschieben und Drehen.
Spiegeln
Entweder wählen Sie den Koordinatenraum bereits vorher aus (über das Menü), ansonsten verwenden Sie die gleichen Tastaturbefehle wie bei den anderen Transformationen.
Abbildung 7: Miniachsen

Zur Orientierung wird unten links im 3D-Fenster eine kleine 3D-Achse gezeichnet, die immer die Richtung der globalen Koordinatenachsen anzeigt (Abb. 7).

Weitere Koordinatenräume

Es gibt neben den hier vorgestellten noch weitere Koordinatenräume, die insbesondere für die Texturierung und die Animation von Objekten eine Rolle spielen. Diese werden im Handbuch aber erst in den entsprechenden Abschnitten vorgestellt.



Custom Transform Orientations (CTO)[Bearbeiten]

Abbildung 8a: Transform Orientations-Panel.

Jeder Koordinatenraum lässt sich unter einem eigenen Namen speichern und später wiederverwenden. Wenn Sie bspw. die Orientierung einer Fläche (Normal) oder Ansicht (View) speichern und später wiederverwenden möchten um andere Objekte genauso auszurichten oder im entsprechenden Koordinatenraum zu arbeiten, können Sie das mit Hilfe von Custom-Koordinatenräumen tun.

Mit dem Menübefehl View->Transform Orientations... rufen Sie das Transform Orientations-Panel auf (Abb. 8a). Hier können Sie Koordinatenräume hinzufügen, löschen, auswählen oder umbenennen. Über die Tastatur kann man einen Koordinatenraum mit Strg-Shift-C hinzufügen, der dabei gleichzeitig aktiviert wird.

Bei einem Objekt wird für die CTO die lokale Ausrichtung verwendet, bei Flächen, Linien und Punkten die Normal Ausrichtung.

Abbildung 8b: Transform Orientations-Panel mit einigen hinzugefügten CTOs.

Beispielvideo zu Anwendung von CTO.

<<<Zurück

Wie man 3D-Objekte erstellt

Inhaltsverzeichnis
Glossar
Weiter>>>

Objektzentrum und Pivot-Punkt