Share via


Raumtransformationen

Eine Welttransformation ändert koordinaten vom Modellraum, in dem Scheitelpunkte relativ zum lokalen Ursprung eines Modells definiert werden, in den Weltraum. Im Weltraum werden Scheitelpunkte relativ zu einem Ursprung definiert, der allen Objekten in einer Szene gemeinsam ist. Die Welt transformiert ein Modell in die Welt.

Das folgende Diagramm zeigt die Beziehung zwischen dem Weltkoordinatensystem und dem lokalen Koordinatensystem eines Modells.

Diagramm der Beziehung zwischen Weltkoordinaten und lokalen Koordinaten

Die Welttransformation kann eine beliebige Kombination aus Übersetzungen, Drehungen und Skalierungen umfassen.

Einrichten einer Weltmatrix

Wie bei jeder anderen Transformation erstellen Sie die Welttransformation, indem Sie eine Reihe von Matrizen in einer einzelnen Matrix verketten, die die Summe ihrer Effekte enthält. Im einfachsten Fall, wenn sich ein Modell am Weltursprung befindet und seine lokalen Koordinatenachsen genauso ausgerichtet sind wie der Weltraum, ist die Weltmatrix die Identitätsmatrix. In der Regel ist die Weltmatrix eine Kombination aus einer Übersetzung in den Weltraum und möglicherweise einer oder mehreren Drehungen, um das Modell nach Bedarf zu drehen.

Direct3D verwendet die Welt- und Ansichtsmatrizen, die Sie festlegen, um mehrere interne Datenstrukturen zu konfigurieren. Jedes Mal, wenn Sie eine neue Welt- oder Sichtmatrix festlegen, berechnet das System die zugeordneten internen Strukturen neu. Das häufige Festlegen dieser Matrizen – z. B. tausende Male pro Frame – ist rechenaufwändig. Sie können die Anzahl der erforderlichen Berechnungen minimieren, indem Sie Ihre Welt- und Ansichtsmatrizen in einer Weltansichtsmatrix verketten, die Sie als Weltmatrix festlegen, und dann die Ansichtsmatrix auf die Identität festlegen. Speichern Sie zwischengespeicherte Kopien einzelner Welt- und Ansichtsmatrizen, damit Sie die Weltmatrix nach Bedarf ändern, verketten und zurücksetzen können.

Transformationen