IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

Probleme avec glutBitmapCharacter en mode Perspective


Sujet :

OpenGL

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 93
    Points : 73
    Points
    73
    Par défaut Probleme avec glutBitmapCharacter en mode Perspective
    Bonjour,

    Je travaille sur un modeleur 3D et je dois afficher un texte à l'écran. Tout ce passe bien en quand j'utilise glOrtho(), mais dès que je bascule en vers glPerspective() le texte disparait. Je pense qu'il ne doit plus s'afficher au bonne endroit.

    Pour placer mon texte j'utilise glRasterPos2f().

    Merci d'avance pour les reponces

    PS : ce n'est pas moi qui est developper ce logiciel au départ, je dois le continuer. Et toute l'interface a été developpé avec QT.

  2. #2
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    en fait il faut afficher les elements en glOrtho en dernier car generalement le zbuffer est desactivé pour l'ecriture et donc dés que tu réaffiche quelque chose ca l'efface...
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 93
    Points : 73
    Points
    73
    Par défaut
    Ce qui se passe c'est que j'ai le choix entre le modeglOrtho et le mode glPerspective.
    Soit je fait tout l'affichage en glOrtho soit tout en glPerspective

  4. #4
    Rédacteur
    Avatar de bafman
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    2 574
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2003
    Messages : 2 574
    Points : 5 323
    Points
    5 323
    Par défaut
    dans ce cas la verifie que tu fait bien tout les glPushMatrix et glPopMatrix qu'il faut...
    * Il est infiniment plus simple de faire rapidement un code qui marche que de faire un code rapide qui marche
    * pour faciliter les recherches, n'oubliez pas de voter pour les réponses pertinentes
    Mes articles

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 93
    Points : 73
    Points
    73
    Par défaut
    Ca ne marche pas meme avec les push et pop matrix entourant l'affichage du texte. J'ai bien verifier ne pas etre à l'interieur d'un autre pushmatrix que celui créer pour cette affichage.

    Voici ton mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
      glPushMatrix();
      glLoadIdentity();
     
      if(strlen(firsttext) != 0 || strlen(lasttext) != 0  || valeurA != 0)
      {
        QString txtogl;
     
          txtogl = firsttext + " "+lasttext;
     
        glClearColor(0,0,0,0);
        glColor3f(1,1,1);
     
        float x[4];
        glGetFloatv(GL_CURRENT_RASTER_POSITION,x);
        cout<<"avant x : "<<x[0]<<" y : "<<x[1]<<" z : "<<x[2]<<endl;
        if(Perspective)
        {
          glRasterPos2f(-15,-9);
          cout<<"Perspective !"<<endl;
        }
        else
        {
          glRasterPos2f(-15,-9);
          cout<<"Orthographique !"<<endl;  
        }
        glGetFloatv(GL_CURRENT_RASTER_POSITION,x);
        cout<<"apres x : "<<x[0]<<" y : "<<x[1]<<" z : "<<x[2]<<endl;
     
        for(uint i = 0; i<txtogl.length(); ++i)
          glutBitmapCharacter(GLUT_BITMAP_HELVETICA_18,txtogl.ascii()[i]);
      }
      glPopMatrix();
    et voici les affichage du cout dans les 2 cas :
    • avant x : 24.8887 y : 24.7998 z : 0.493
      Orthographique !
      apres x : 74.6665 y : 24.7998 z : 0.5

      avant x : 127.667 y : 24.7998 z : 0.5
      Perspective !
      apres x : 127.667 y : 24.7998 z : 0.5


    et je n'arrive pas a comprendre pourquoi en perspective glRasterPos n'a aucune influence.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 93
    Points : 73
    Points
    73
    Par défaut
    Ca y est j'ai resolu mon probleme, mais c'est brute. Je repasse en glOrtho() au moment de l'affichage du texte lorsque je suis en perspective. Ca marche comme ca donc je vais le laisser mais si vous avez une autre methode un peu moins buldozzer contacter moi.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
        if(Perspective)
        {
    [b]   glMatrixMode(GL_PROJECTION);  /
          glLoadIdentity();
          glOrtho(-18,18,-10,10,-100,100);
          glMatrixMode(GL_MODELVIEW);  
          glLoadIdentity();[/b]
     
          glRasterPos2f(-15,-9);
          cout<<"Perspective !"<<endl;
        }
    PS : merci bafman pour ton aide

  7. #7
    Membre régulier
    Inscrit en
    Mars 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 84
    Points : 89
    Points
    89

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    93
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 93
    Points : 73
    Points
    73
    Par défaut
    Exxos il y a une grande différence entre mon sujet et celui vers lequel tu me rediriges.
    Dans l'autre sujet le problème était d'afficher une phrase en OpenGL, alors que mon problème était que la phrase OpenGL apparaissait très quand j'étais en mode glOrtho() mais plus du tout quand je passais en mode glPerspective().

    Ce que je voulais comprendre c'était pourquoi cette difference entre les 2 modes pour l'affichage d'un simple texte, et ca je ne l'ai pas trouvé en faisant une recherche. Je suis peut-etre passé à coté mais la réponses n'est pas dans ce sujet (que par ailleurs j'avais deja lu pensant y trouver la solution)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 29/09/2009, 17h27
  2. Probleme avec base access en mode partagé
    Par anthony_fr dans le forum Bases de données
    Réponses: 4
    Dernier message: 20/04/2007, 11h56
  3. probleme avec le mode sans echec
    Par subzero82 dans le forum Windows XP
    Réponses: 5
    Dernier message: 07/06/2006, 15h57
  4. probleme avec zone liste modifiable en mode continu
    Par hellosct1 dans le forum Access
    Réponses: 3
    Dernier message: 16/11/2005, 13h47
  5. Probleme avec 'writing-mode' en impression
    Par Gremlins13 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 12/01/2005, 15h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo