First Person - In 3 Dimensionen bewegen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • First Person - In 3 Dimensionen bewegen

    Hallo!

    Ich arbeite mich gerade in OpenGL ein. Geht auch recht gut, aber stehe nun vor einem Problem, dass eher allgemein ist. Will mich wie bei einem 3D Programm frei in der Welt bewegen können. Wie ein Raumschiff: Rauf, runter, links, rechts, drehenrauf, drehenrunter, drehenlinks, drehenrechts. Sprich vogelfrei. Ich glaube, ihr wisst, was ich meine Wink

    Auf 2 Dimensionen hab ich es auch schon geschafft mich zu bewegen, aber irgendwie happerts an der 3...

    Ich habe 2 Winkel (eine um die z-Achse und die andre um die y-Achse) und eine Weglänge (oder auch radius). Jetzt möchte ich, wenn ich mich in einem bestimmen Winkel (sagen wir mal 45° von x weg und 45° hinauf) den Punkt errechnen, der vom 0Punkt genau diese Winkel entfernt ist mit einer bestimmten Weglänge.

    Kurz gesagt, ich schaue gerade rechts rauf und will mit betätigen einer Taste auch dorthin.
    Ich brauch also die Formel(n), die man benötigt, um diesen Punkt zu berrechnen.

    Danke

    PS: Falls ich mich schlecht ausgedrückt habe und ihr nicht wisst, was ich will, dann versuche ich es irgendwie anders nochmal. Aber Stichwort vogelfrei bzw Kammera wie in einem 3D Bearbeitungs-Programm müsste eigentlich alles erklären!
  • hm lol
    erstens ma hat OpenGL doch funktionen mit den 3 Übergabeparametern x, y, z
    das standard kartesische Koordinatensystem, dass man mit bissel Kenntnis
    der Analysis 3 oder so in andere Koordinatensysteme transformieren kann.

    Da gibts ausserdem ein gutes PDF File - heut erst noch bei mir aufm Rechner
    gesehn muss so "OGL Einführung" heissen, ich google ma

    ja hab ich mir da irgendwo runtergeladen guckst Du:
    http://www.robsite.de/tutorials.php?tut=opengl

    Aso wegen 3D gibts schon einige Koordinatensysteme, musst halt genau wissen,
    welches Du nimmst - such ma nach Polarkoordinaten und 3D - geil warte - google
    hm vielleicht hilft da http://wwwcs.uni-paderborn.de/cs/ag-domik/computergrafik/cg_skript/html/node63.htm weiter
  • Ich habe 2 Winkel (eine um die z-Achse und die andre um die y-Achse) und eine Weglänge (oder auch radius). Jetzt möchte ich, wenn ich mich in einem bestimmen Winkel (sagen wir mal 45° von x weg und 45° hinauf) den Punkt errechnen, der vom 0Punkt genau diese Winkel entfernt ist mit einer bestimmten Weglänge.

    nähm und wenn man auf dem 2 D jetz einfach noch nen "Höhenwinkel" draufbaut?
    wofür der Sinus ziemlich schlau wäre, damit man bei 0 grad ganz unten ist 8-)
    Ohm krass das wird ja ein 3D-Pythagoras ...
    mal Dir mal ein Bild und versuch dir die rechtwinkligen Dreiecke reinzuzeichnen,
    dann gibts eventuell nen Aha Effekt
  • lol, ich hab ma was in Paint gemalt ;)

    [Blockierte Grafik: http://home.arcor.de/zyklosmile/KoordinatenSystem.jpeg]

    also haben wir r, alpha und beta gegeben:

    x²+y²+z² = r² , demnach ist die rote Hypotenuse da x²+y² = r'²
    eben auch gleich r²-z² = r'²
    wobei z/r = sin beta (da ja Gegenkathete zu Hypothenuse)

    so bekommen wir aus r und beta schonmal z raus
    und demnach auch r' ... dann kannste mit r' wie in 2D vorgehen:
    y/r' = sin alpha und x/r' = sin alpha

    nu hammer x, y und z