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 :

Affichage texte en projection glFrustum


Sujet :

OpenGL

  1. #1
    Membre averti
    Inscrit en
    Novembre 2004
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 64
    Par défaut Affichage texte en projection glFrustum
    Bonjour,
    j'essaye désespérément d'afficher un texte à l'écran (en avant-plan) dans ma fenetre opengl, mais je n'y arrive pas.

    Ma projection est de type frustum :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    glFrustum(-0.018, 0.018, -0.012, 0.012, 0.050, 10.0);
    Ma fonction d'affichage de texte utilise un projection Orthogonale (je ne sais pas si c'est nécessaire, mais j'ai essayé) :
    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
    void drawTexte(void *font, const char *string, float x, float y) 
     
    {
    	glPushAttrib( GL_LIGHTING | GL_DEPTH_TEST | GL_LIST_BIT );
    	glDisable(GL_TEXTURE_2D);
    	glDisable(GL_LIGHTING);
    	glEnable(GL_DEPTH_TEST) ;
     
    	glMatrixMode(GL_PROJECTION); 
    	glPushMatrix(); 
    	glLoadIdentity();
    	gluOrtho2D(0,800,0,600);    // ma fenetre est en 800x600
    	//glOrtho(-18,18,-10,10,-100,100);
     
    	glMatrixMode(GL_MODELVIEW); 
    	glPushMatrix(); 
    	glLoadIdentity();
     
    	glColor3i(1,1,0);
    	glRasterPos2f(x,y);    // j'ai aussi essayé en forcant la position a (100,100) ou a une position 3d visible dans la scene
    	//glWindowPos2f(x,y);    // ma version d'opengl ne supporte pas ca apparement, mais ca m'aurait vraiment arrangé...
    	p = (char*) string; 
     
    	while (*p != '\0') glutBitmapCharacter(font, *p++); 
     
    	glPopMatrix(); 
    	glMatrixMode(GL_PROJECTION); 
    	glPopMatrix(); 
    	glMatrixMode(GL_MODELVIEW);
     
    	glPopAttrib();
     
    }
    j'ai beau chercher dans les topics, je ne comprend pas pourquoi je n'ai rien qui s'affiche :-/
    la projection frustum peut poser probleme ? est-ce que j'ai bien fait le passage à une autre projection ?

    merci de votre aide.

  2. #2
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 582
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 582
    Par défaut
    si tu veux ton texte au premier plan, du devrais "disable" le test de profondeur plutot que l'activer
    glDisable(GL_DEPTH_TEST);
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  3. #3
    Membre averti
    Inscrit en
    Novembre 2004
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 64
    Par défaut
    effectivement c'est plus logique oui
    je viens de résoudre mon problème, en fait c'etait complètement autre chose j'avais une fonction d'affichage dans une classe qui nettoyait l'ecran et faisait le swapbuffers :-/ ca venait du fait que j'appelais que cette méthode avant. du coup mes affichage de texte ne pouvaient forcément pas être à l'écran (ils etaient avant et après l'appel à la méthode).

    voila, le problème est donc résolu. je ne sais pas si je dois mettre la balise résolu vu que le problème ne correspond pas vraiment au titre ?

    encore merci pour l'aide.

  4. #4
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 582
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 582
    Par défaut
    tu peux également modifier le titre du sujet (en éditant ton premier message) si tu veux qu'il colle avec le problème réel
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

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

Discussions similaires

  1. Norme d'insertion/affichage texte dans une DB ?
    Par kiwikiller dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 21/12/2005, 11h53
  2. [FLASH MX2004] Pb d'affichage texte dynamique
    Par mohican13 dans le forum Flash
    Réponses: 6
    Dernier message: 01/02/2005, 09h55
  3. [FLASH MX 2004] Affichage texte dynamique
    Par Sun3clipse dans le forum Flash
    Réponses: 8
    Dernier message: 25/06/2004, 16h24
  4. affichage texte style splash screen
    Par scorbo dans le forum MFC
    Réponses: 4
    Dernier message: 13/06/2004, 12h03

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