World To Screen
-
Hey,
Ich suche nun seit einiger Zeit ( leider ohne Erfolg ) nach einer World to Screen Matrix (wenn dass überhaupt so heißt).
Ich habe meine Position(x,y,z) und die viewangles(pitch yaw roll). Nun will ich dass ein Objekt, dass am Punkt p(x,y,z) steht auf meinen bildschirm gezeichnet wird (wie ich zeichne ist mir dann shcon klar). Wie kann ich nun diese Daran umrechnen, damit ich von meiner Position aus das Objekt sehe?
-
Naja, du musst dir eben eine ViewProjectionMatrix bauen und deinen Punkt da durchschicken!? Wo genau liegt das Problem?
-
Ich verstehe nicht genau wie ich die Position eben errechne.
Ich dachte mir, dass ich die x,y,z-Werte des Objekts von meiner position abziehen muss. Jedoch weis ich dann von der Umrechnung nicht weiter.
-
Ok, ich vermut, dir fehlt es noch etwas an Grundlagen was Matritzen und so angeht!?
Die einfachste mögliche Form einer perspektivischen Projektion ist, deine x- und y-Koordinaten durch die z-Koordinate zu teilen. Intuitiv kannst du dir das damit in Verbindung setzen, dass Objekte weiter hinten (größere z-Koordinate) ja kleiner erscheinen. Vielleicht fängst du ja damit schon was an?
-
Ja, mir fehlt es noch an den Grundlagen von Matrixen. Jedoch muss ich ja irgendwann mal anfangen das umzusetzen
learning by doing. Das mit der Zentralprojektion, der gelinkte Artikel, ist mir bereits bekannt, jedoch liefert dieser mir keine exakten Hinweise auf eine Umrechnung.
-
http://duriansoftware.com/joe/An-intro-to-modern-OpenGL.-Chapter-3:-3D-transformation-and-projection.html
http://db-in.com/blog/2011/04/cameras-on-opengl-es-2-x/
http://www.arcsynthesis.org/gltut/Positioning/Tut04 Perspective Projection.htmlHilft dir das vielleicht?
-
nn9_nn schrieb:
[...] jedoch liefert dieser mir keine exakten Hinweise auf eine Umrechnung.
dot schrieb:
[...] deine x- und y-Koordinaten durch die z-Koordinate zu teilen.
-
Danke an Euch alle!
@ cooky451 das ist Perfekt vielen Dank für die Links!