shenron666
Messages postés229Date d'inscriptiondimanche 14 septembre 2003StatutMembreDernière intervention20 août 2014
-
2 mai 2005 à 14:25
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 2007
-
11 mai 2005 à 20:47
Bonjour, j'ai un problème avec le dessin 2D opengl
j'utilise SDL pour l'interface système (fenêtre, souris, ect )
je crée une fenêtre en 800 x 600
puis j'initialise mon viewport de la manière suivante :
c'est pas grand chose et pourtant j'ai déjà un problème
j'ai bien un rectangle dans le coin supérieur gauche de ma fenêtre mais il manque un pixel dans le coin en haut à droite de mon rectangle
je n'arrive pas à trouver d'où vient le problème
j'ai essayé de modifier dans le glOrtho les dimension en mettant
glOrtho(0, 799 , 599, 0, -1, 1);
ce qui ne change rien
de même les glHint ne m'apportent rien
et j'ai aussi essayé avec des glVector2f
ma carte graphique est une ati radeon 9600, peut-etre un problème des pilotes ati ?
déplacez le dessin dans les différents coins de la fenêtre d'affichage, vous verrez que la jonction des lignes se fait mal et pas de la même façon selon la position de la fenêtre et par endroit ce sont même les lignes qui se décalent
si vous n'avez aucun problème faitent le moi savoir svp
... euh et si vous avez une solution aussi hein ?
merci
shenron666
Messages postés229Date d'inscriptiondimanche 14 septembre 2003StatutMembreDernière intervention20 août 2014 2 mai 2005 à 21:17
Malheureusement cela ne fonctionne pas, ce qui ne m'étonne pas dans un
sens car gluOrtho2D est simplement un appel à glOrtho avec
near –1 et far 1
j'ai tout de même essayé au cas où mais sans succès
je me demande s'il y a une solution, je pense plus pour un problème de
driver ati, peut-etre toutes les ati, si quelqu'un pouvait tester avec
une nVidia et me dire ce qu'il a
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 2 mai 2005 à 21:47
Ok, mais j'avais mis un ordre de parametre differents t'as change aussi ?
si tu as fait un glEnable(GL_CULL_FACE) fait attention a bien rentre tes faces en "face avant"
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 2 mai 2005 à 21:50
Et au fait :
puis j'initialise mon viewport de la manière suivante :
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, 800 , 600, 0, -1, 1);
Ces commandes n'initialise pas le viewport, elles initialisent la matrice de projection, la commande pour initialiser le viewport c'est glViewport(.....)
KeniiyK
Vous n’avez pas trouvé la réponse que vous recherchez ?
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 2 mai 2005 à 21:58
Pardon, j'avais pas teste ton zip, chez moi ca marche nikel (NVIDIA....), donc apparement c'est pas un probleme de projection ni de culling.
Par contre le rectangle ne peut pas alle jusqu'au bord droit -> reste 1 colonne de pixels
idem pour le bord du bas (voire 2 lignes de pixels....)
Et sur le bord du haut on dirai qu'il arrive a monter d'une ligne de trop....
KeniiyK
PS : pardon pour les precedents posts.... qui ne servent a rien
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 3 mai 2005 à 17:06
Ouaip, j'avais quand meme compri, ce qui serai bien ca serai de voir un screenshot de ce que tu obtiens. Car j'ai quand meme du mal a croire que ATI soit autant a la ramasse... surtout avec la CG que tu as....
Sinon autre solution : les textures mais plus difficile a controle.... enfin ca depend de ce que tu comptes faire par la suite.
en fait, le but de mon appli est une interface utilisateur, et donc des fenêtres, des boutons, des checkbox ect... tout ce qui peux servir à une interface mais je la veux purement opengl
le projet est à peine avancé, j'ai les bases et j'étais simplement en train d'essayer de "dessiner" des fenêtres avec un effet 3D, en faisant une partie claire et une partie foncée
finalement je vais être obligé d'utiliser des GL_QUADS remplis et donc si je veux simuler un effet de profondeur comme tu dis il faudra que je triche avec des textures ou simplement avec plus de polygones et des dégradés de couleur
en fait, le but de mon appli est une interface utilisateur, et donc des fenêtres, des boutons, des checkbox ect... tout ce qui peux servir à une interface mais je la veux purement opengl
le projet est à peine avancé, j'ai les bases et j'étais simplement en train d'essayer de "dessiner" des fenêtres avec un effet 3D, en faisant une partie claire et une partie foncée
finalement je vais être obligé d'utiliser des GL_QUADS remplis et donc si je veux simuler un effet de profondeur comme tu dis il faudra que je triche avec des textures ou simplement avec plus de polygones et des dégradés de couleur
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 4 mai 2005 à 18:07
Arf j'etais au boulot et je voulais tester, parce que j'ai une ATI X300 et j'aurai pu te dire ce que j'obtenai...... MAIS il me manque MSVCP71.dll, je bosse sous Visual C++ 6, donc si tu pouvais mettre la DLL dans le zip.... merci.
shenron666
Messages postés229Date d'inscriptiondimanche 14 septembre 2003StatutMembreDernière intervention20 août 2014 8 mai 2005 à 23:53
Ouin snif le week end de 4 jours se termine
bon j'en ai profité pour modifier mon programme et j'ai pris une autre
orientation, tant pis pour les lignes, je verrai si je trouve des
moyens d'optimiser pour gagner en vitesse plus tard, je vais bidouiller
comme je peux avec les textures si cela s'avérait nécessaire
en attendant voilà ce que ca donne, c'est pas grand chose mais c'est un début :
et si tu télécharge le fichier zip cité dans le premier post j'y ai
ajouté un exe au cas où tu voudrais tester, les 3 boutons de la souris
servent à bouger certaines fenêtres
KeniiyK
Messages postés326Date d'inscriptionvendredi 13 août 2004StatutMembreDernière intervention 2 novembre 20072 9 mai 2005 à 20:09
Re-Salut, donc nous etions Lundi aujourd'hui et j'ai teste au boulot.... encore un probleme de DLL.... completement oublie de poste ensuite les noms donc demain..... Désolé....
shenron666
Messages postés229Date d'inscriptiondimanche 14 septembre 2003StatutMembreDernière intervention20 août 2014 10 mai 2005 à 00:41
Pas de problème, merci pour ton aide en tout cas
en plus j'ai pas trop le temps d'avancer en ce moment, un autre projet perso en cours et encore plus au boulot
sinon j'ai réfléchit au principal inconvénient de la méthode qui
fonctionne, cette méthode consite simplement en des GL_QUADS pleins en
dessinant du fond vers le devant à la méhode du peintre
et cela m'ennuie pour 2 raisons :
- d'abord l'overdraw, on dessine pleins de fois par dessus des endroits qu'on a déjà dessiné
- ensuite pour la transparence
le solution sera peut-etre d'utiliser le stencil buffer et de dessiner
les fenêtres toujours de celle la plus en dessous vers celle la plus au
dessus tout en dessinant d'abord les objets contenus dans la fenêtre du
plus proche au plus éloigné
enfin bon tout cela n'intéresse peut-etre que moi lol