Hello,
Ma question d'une manière générale:
Est-ce qu'il y a une raison évidente que quand on affiche des formes 2D, elles sont noires par défaut et glColor3f ne semble pas fonctionner.
Plus précisemment:
J'essaye de modifier un programme qui fait un rendu complex des molécules en openGL. Mon but serait de faire un petit GUI 2D en openGL sur le canvas 3D.
Donc ce que j'ai fait pour configurer le rendu 2D:
et ensuite j'appelle la méthode qui affiche un carré:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 glMatrixMode(GL_PROJECTION); glLoadIdentity(); glViewport(0,0,winx,winy); glOrtho(0, winx, 0, winy, -1, 1); glMatrixMode(GL_MODELVIEW); glLoadIdentity();
Alors il s'affiche bien, mais il est noir par défaut et je n'arrive pas à modifier sa couleur. Idéalement j'aimerais utiliser glColor4f pour avoir accès à sa transparence, mais étant donné que le glColor3f ne fonctionne déjà pas, je pense qu'il faudrait trouver pourquoi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 glColor3f(0.5f, 0.0f, 0.8f); glTranslatef(0, 0, 1); glBegin(GL_QUADS); glVertex3f(800.0f, 50.0f, 0.0f); glVertex3f(870.0f, 50.0f, 0.0f); glVertex3f(870.4f, 10.0f, 0.0f); glVertex3f(800.0f, 10.0f, 0.0f); glEnd();
Je soupçonne que ceci soit dû au réglages 3D du canvas. Est-ce possible?
Sinon le GUI de programme est fait dans wxWidgets, donc la fenêtre openGL est du wxGLCanvas, mais je pense que ça n'a pas d'influence.
Voilà, donc si quelqu'un aurait une idée où chercher, ça serait super!
Merci!
Greg
Partager