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 :

bug GL_LINE_LOOP !


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Inscrit en
    Juillet 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 12
    Par défaut bug GL_LINE_LOOP !
    Bonjour à tous,

    Je ne sais pas s'il s'agit d'un bug connu (je n'ai rien trouvé sur le net à son sujet) et pourtant c'est grave, même s'il a l'air spécifique à ma machine (NVidia Geforce 4 TI 4200 AGP8x sous Windows XP SP2 avec les derniers drivers ForceWare 93.71 pour Geforce 4).

    L'exemple que je propose pour mettre en évidence le bug est très simple : il dessine simplement deux formes fermées différentes (un cercle et un carré) à l'aide de glBegin(GL_LINE_LOOP), avec un pinceau pointillé :

    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
     
    const int NBPTS = 100;
    const double PI = 3.1415927;
     
    // dessine un cercle
    glBegin(GL_LINE_LOOP);
    for (double a=0; a<2*PI; a+=2*PI/NBPTS) {
        glVertex2d(cos(a), sin(a));
    }
    glEnd();
     
    // dessine un carré, pour montrer que ça arrive avec n'importe quelle forme
    glBegin(GL_LINE_LOOP);
    for (double a=0; a<8; a+=8.0/NBPTS) {
        if (a<2)
            glVertex2d(1-a, 1);
        else if (a<4)
            glVertex2d(-1, 1-(a-2));
        else if (a<6)
            glVertex2d(a-4-1, -1);
        else
            glVertex2d(1, a-6-1);
    }
    glEnd();
    Il se passe la chose suivante lorsque je fais varier la valeur de NBPTS :
    - jusqu'à 120 points, aucun problème (voir screenshot 1)
    - à partir de 120 points (un peu plus pour le carré), apparaît une ligne parasite joignant le premier point à un point de la figure qui s'"éloigne" le long de la figure lorsque NBPTS augmente, de manière parfaitement déterministe (voir screenshot 2)
    - plus j'augmente le nombre de points qui composent la figure, plus de lignes parasites apparaissent, partant toutes du premier point et uniformément répartie (voir screenshot 3)

    Observations :
    - je n'obtiens ce bug que sur la machine citée en préambule.
    - pas de bug lorsque GL_LINE_STIPPLE est désactivé ou que le lineStipple vaut 0xffff (ligne pleine)
    - pas de bug avec GL_LINE_STRIP à la place de GL_LINE_LOOP mais ce n'est pas l'effet recherché car je veux dessiner des simples figures fermées en 2D.

    Quelqu'un peut-il m'expliquer ce qui se passe ? A qui m'adresser ? Où se situe le problème ? Les drivers ? La carte ?
    Merci
    Images attachées Images attachées    

  2. #2
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 580
    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 580
    Par défaut
    si tu peux uploader ton programme zippé on pourrait tester de notre côté
    par contre de mon côté mes 2 machines sont équipées de nVidia (gf6 et gf7)
    tu peux également mettre tes drivers à jour pour voir si ça change kke chose
    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 habitué
    Inscrit en
    Juillet 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 12
    Par défaut
    Bonjour,
    Je peux effectivement uploader le petit prgm dont j'ai extrait le code de mon 1er post, mais deux problemes :
    - il utilise Qt parce que c'est ce que je connais (et pas Glut ou autres)
    - il est sûr et certain que le rendu sera parfaitement sain sur tes configurations, donc je ne sais pas ce que ca va permettre de faire ...
    Est-ce que ca va qd mm ?

  4. #4
    Membre habitué
    Inscrit en
    Juillet 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 12
    Par défaut
    Je joins donc le petit programme qui illustre le problème.
    Il utilise Qt mais la conversion vers Glut doit être très simple.
    Fichiers attachés Fichiers attachés

  5. #5
    Membre Expert
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 580
    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 580
    Par défaut
    salut, en fait je parlais plus d'uploader un executable pour tester sur d'autres machines

    pourquoi ou plutot comment sais tu que le rendu sera sain sur mes configs ?

    je vais tout de même voir si je peux tester la même chose sur les pc que j'ai à disposition
    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.

  6. #6
    Membre habitué
    Inscrit en
    Juillet 2005
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 12
    Par défaut
    Oulah si j'uploade un executable il va falloir les dll de Qt et si je les intègre en static l'executable pèsera 10 megs.
    Je pense que le rendu sera sain car j'ai testé sur plusieurs autres configurations que sur celle que j'ai décrite dans mon 1er post, avec succès.

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/03/2003, 16h37
  2. Bug new build ??
    Par rgarnier dans le forum XMLRAD
    Réponses: 4
    Dernier message: 31/01/2003, 10h30

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