Partage
  • Partager sur Facebook
  • Partager sur Twitter

deux camera avec opengl

    3 juin 2008 à 0:18:55

    Salut, est il possible d'avoir deux camera avec opengl? si oui comment?
    • Partager sur Facebook
    • Partager sur Twitter
      3 juin 2008 à 2:03:04

      Plusieurs vues sur le même écran ?
      => glViewport()
      • Partager sur Facebook
      • Partager sur Twitter
        3 juin 2008 à 13:07:57

        non, je voulais dire deux camera dans le meme viewport!
        • Partager sur Facebook
        • Partager sur Twitter
          3 juin 2008 à 13:26:06

          Bien techniquement, rien ne t'en empêche. Ça donnerait en gros quelque chose comme :
          glMatrixMode(GL_MODELVIEW);
          
          glLoadIdentity();
          gluLookAt(position1);
          draw();
          
          glLoadIdentity();
          gluLookAt(position2);
          draw();
          


          Mais niveau rendu.. je ne vois pas bien ce que tu peux vouloir faire (?)
          • Partager sur Facebook
          • Partager sur Twitter
            3 juin 2008 à 14:10:13

            c'est Gravstein qui me la conseillé ici

            Citation : lui

            Moi j'essayerai d'inverser l'ordre des glRotated et du glTranslate.
            Le but c'est bien de le tourner dans l'orientation de la caméra, einh?

            Avec opengl, il faut réflechir au transformation dans l'ordre inverse: La dernière transformation que tu donnes est la première qui est appliquée à ton objet.

            Donc la tu dois:
            1 - Orienter ton cube
            2 - Le placer en face de la camera..

            Donc l'ordre est:
            1 - glTranslate()
            2 - glRotate(m_Phi, ...); glRotate(m_Theta, ...);

            Et il ne faut pas juste décrémenter la coordonnée Z de la caméra, ca ca marche pas: il va juste placer le cube "sous" la position de la camera.
            A mon avis, c'est pas la bonne solution.

            Utilise plutot une première camera pour dessiner ton cube (genre une projection le long de Z, gluOrtho2D, par ex, ou simplement gluPerspective, mais sans la déplacer après) et ensuite tu utilise une autre camera pour le reste du dessin. (C'est exactement le principe utilisé pour les Gui, et autre truc qui s'affichent à l'écran dans les jeux)

            • Partager sur Facebook
            • Partager sur Twitter
              3 juin 2008 à 14:18:13

              Tu ne peux avoir qu'une caméra active à la fois (ce qui est logique, tu ne peux pas afficher une scène depuis plusieurs points de vue en même temps), mais rien ne t'empêche d'en utiliser plusieurs successivement dans un même rendu.
              • Partager sur Facebook
              • Partager sur Twitter
                3 juin 2008 à 14:26:34

                donc, en faisant comme ça:
                glMatrixMode(GL_MODELVIEW);

                glLoadIdentity();
                gluLookAt(position1);
                draw();

                glLoadIdentity();
                gluLookAt(position2);
                draw();

                j'aurais un rendu correcte?
                • Partager sur Facebook
                • Partager sur Twitter
                  3 juin 2008 à 15:43:49

                  Tu auras ta scène rendue de deux points de vue différents superposés. Pas sûr que ce soit ce que tu veux faire... D'ailleurs tu veux faire quoi au juste ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                    3 juin 2008 à 15:47:47

                    je veux avoir un cube devant ma camera freefly
                    • Partager sur Facebook
                    • Partager sur Twitter
                      3 juin 2008 à 17:06:30

                      Ok, dans ce cas effectivement il vaut mieux tracer le cube en espace caméra (utiliser l'identité + une petite translation pour la matrice model-view).

                      Sinon tu peux aussi calculer une matrice pour ton cube à partir de la matrice de vue.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        3 juin 2008 à 17:08:29

                        dans le mix adapté dans mon cas est d'avoir deux cameras? une pour mon cube et l'autre pour l'espace?
                        • Partager sur Facebook
                        • Partager sur Twitter
                          3 juin 2008 à 17:42:09

                          Oui tu peux voir ça comme ça. En réalité tu ne fais que changer de repère lorsque tu dessines ton cube (je ne sais pas quelle représentation est la plus simple à comprendre pour toi).
                          • Partager sur Facebook
                          • Partager sur Twitter

                          deux camera avec opengl

                          × 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