DirectX Aktuelle Position der Kamera
-
Wie bekomme ich die aktuelle Position der Kamera mit Koordinaten also als Vektor in Direct3D ?
-
Du musst dir merken, wo du sie hinsetzt
. Ich hab von Direct3D wenig Ahnung, aber ich denke es unterscheidet sich dort nicht wesentlich von OpenGL, und dort ist die Kamerapositionierung nix anderes als jede andere Transformation, nur dass sie eben umgekehrt durchgeführt wird. Das Konzept "Kamera" existiert auf dieser Abstraktionsebene nicht, es ist die Aufgabe der jeweiligen darauf aufbauenden Engine, dir diese Funktionalität zur Verfügung zu stellen...Grüße
Martin
-
viewmatrix bzw deren inverse enthaellt die position des viewpoints... wenn es das ist was du suchst.
-
Ich brauche halt irgendwie den Punkt, an dem meine virtuelle Kamera ist... Am Anfang ist es ja recht einfach, aber die bewegt sich durch die Eingabe des Benutzers. Also gibt es keine direkte Funktion die mir diese ausgibt - muss ich dan quasi mitrechnen, wo ich bin ?
-
Am besten du bewegst nicht die Kamera sondern alles andere rund um sie herum.
MfG SideWinder
-
ist dir meine loesung zu einfach

-
Nein.. eher andersrum ! Wie bekomme ich aus der ViewMatrix den Viewpoint ?
-
typedef struct _D3DMATRIX { union { struct { float _11, _12, _13, _14; float _21, _22, _23, _24; float _31, _32, _33, _34; float _41, _42, _43, _44; }; float m[4][4]; }; } D3DMATRIX;dich interessieren die eintraege _41, _42 und _43
-
Ah, Danke !
-
vergiss nicht, dass du eventuell die inverse brauchst. dabei reicht es nicht nur die position *-1 zu rechnen, du brauchst dann die inverse der matrix. dafuer liefert d3d eine funktion.