
Zitat von
marabu:
Meine Erwartung wäre, dass du die aktuelle matWorld (warum GetTransform? normal hast du die doch immer vorrätig...) mit der Verschiebung für deinen Text multiplizierst, danach SetTransform() und das war es.
Hallo marabu,
durch die WordMatrix kann man natürlich Transformationen der 3D-Objekte bezüglich des World-Koordinatensystems vornehmen. Bei Text handelt es sich jedoch nicht um ein Objekt der "3D-Welt" und daher gibt man in der Funktion DrawTextA auch Bildschirmkoordinaten in Pixeln an, um diesen zu positionieren. Um aber von den Welt-Koordinaten des 3D-Objektes zu den Bildschirmkoordinaten zu kommen muss man die Multiplikation
Wordmatrix * Viewmatrix * Projektionmatrix
"manuell" ausführen und dann den Vektor der 3D-Koordinaten mit dieser Matrix transformaieren.
Ob die Reihenfolge der Multiplikation so stimmt, da bin ich mir auch nicht 100%ig sicher. Zumal mir jemand erzählt hat, dass es
Wordmatrix * Viewmatrix * Perspectivematrix
heißen müßte. Daher frage ich mich, ob Projektionmatrix = Perspectivematrix? Eine Perspectivematrix gibt es in D3D nicht

.
Gruß,
oXmoX