Partage
  • Partager sur Facebook
  • Partager sur Twitter

Orientation 3D

Sujet résolu
    4 juillet 2018 à 2:12:17

    Lu',

    je suis actuellement an train de programmer un (pseudo)"moteur" de rendu 3D et j'ai recemment attaqué la partie "camera".

    Là où je bloque est lorsque qu'il s'agit de redefinir le repere/referentiel (local) de la camera à partir du deplacement de la souris. En effet, la souris se deplace dans un repere 2D (l'ecran), et il faut à partir de la varition en 2D de la souris,  definir une direction dans un repere 3D, direction dans laquelle pointera la camera.

    Si on considere le repere "global" etant y+ vers le haut, z+ vers l'avant et x+ vers la droite, je trouve un peu partout  sur internet que:

    • direction en x = cos(tangage) * cos(lacet)
    • direction en y = sin(tangage)
    • direction en z = cos(tangage) * sin(lacet)
    Bien evidement, tangage et lacet sont deduis à partir des variations de la souris.
    Autant la direction en y, j'arrive à comprendre, autant la direction en x et z c'est le flou total.
    Donc ,si quelqu'un a quelque(s) piste(s) de demonstration, voir même (dans l'ideal) me guider, pour que je la fasse moi même (oui, l'école me manque déja), ce serait sympa.
    thanks!
    • Partager sur Facebook
    • Partager sur Twitter

    Eug

      4 juillet 2018 à 10:30:59

      les formule que tu indiques correspondent à un repérage de la direction caméra en coordonnées sphériques par un vecteur unité    oc(x,y,z)  où le tangage est l'angle entre oc  et le plan perpendiculaire (ox,oz) à l'axe oy ( angle (oc,oy)=pi/2-tangage) , d'où le sin(tangage) pour la composante selon oy  et le lacet correspond à l'angle entre la projection de oc sur le plan  (ox, oz)  ( soit  cos(tangage) )  et l'axe ox d'où la composante sur ox: cos(tangage)*cos(lacet) et la composante sur oz : cos(tangage)*sin(lacet).

      -
      Edité par Sennacherib 4 juillet 2018 à 10:33:27

      • Partager sur Facebook
      • Partager sur Twitter
      tout ce qui est simple est faux, tout ce qui est compliqué est inutilisable

      Orientation 3D

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown