View-Matrix und Vertex Shader (DX9)
-
Hi,
ich hab ein Objekt mit einem Vertex und Pixelshader.
Soweit geht auch alles, das Objekt wird angezeigt und ich kann es bewegen.Nur wie mach ich es, das ich meine Kamera bewege?
Kann mir einer ein kleines Beispiel geben, wie ich die Kameraposition in den Vertex/Pixelshader bekomme.
-
Man bewegt nicht die Kamera sondern alle Objekte entgegengesetzt zu der Richtung in die man die Kamera verschieben will.
-
EnERgYzEr schrieb:
Man bewegt nicht die Kamera sondern alle Objekte entgegengesetzt zu der Richtung in die man die Kamera verschieben will.
Nicht schon wieder!
Bye, TGGC (Hast du's drauf?)
-
Das weis ich auch.
Ohne Shader ist es auch kein Prob die Kamera zu bewegen (oder alle Objekte um die Kamera zu bewegen).
Da geht es ja einfach mit "SetTransform(D3DTS_VIEW, &view_matrix)".
Aber mit dem Shader geht es nicht mehr.
Jedenfalls nicht bei mir.
-
Du musst doch nicht SetTransform nutzen sondern kannst die berechnung doch auch selbst pro Objekt durchführen.
-
Üblicherweise multipliziert man doch einfach die Welt-, Kamera- und Projektionsmatrix zusammen, lädt diese Gesamtmatrix dann in den Shader und transformiert da dann. Wenn man sonst nix berechnen will ist es so besser da man dann nur eine Matrixmultiplikation pro Vertex hat. Ansonsten versteh ich die Frage nicht so richtig.
-
Danke,
das war genau die Antwort die ich gebraucht habe,
jetzt funktioniert alles.