Bonjour,
Dans mon programme, j'ai une texture qui me sert de fond (sans couche alpha) et par dessus cette texture, je dois afficher une texture plus petite avec une transparence (et qui a une couche alpha bien sur).
Je charge ma petite texture de la manière suivante :
et j'utilise pour afficher le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 QPixmap pixmap(nomFichier); Texture2 = bindTexture(pixmap, GL_TEXTURE_2D, GL_RGBA);
Et au final, j'ai ma texture au fond correcte et par dessus je vois bien ma petite texture mais avec du blanc à la place de la transparence. Auriez-vous une idée d'où pourrez se situer mon erreur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 qglClearColor(Qt::white); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) ; glEnable(GL_BLEND); glEnable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D, Texture2); glBegin(GL_QUADS); glTexCoord2d(0,0); glVertex3f(-50,-50, -1.0); glTexCoord2d(1,0); glVertex3f( 50,-50, -1.0); glTexCoord2d(1,1); glVertex3f( 50, 50, -1.0); glTexCoord2d(0,1); glVertex3f(-50, 50, -1.0); glEnd(); glDisable(GL_TEXTURE_2D); glDisable(GL_BLEND);
Merci
Partager