Salut tout le monde
Bon je vous explique mon probleme. Je veux afficher 2 sprites et le premier est caché par le second au debut. Mais en changeant la composante z du premier je veux le faire passer par dessus le 2e. Seulement voila, le premier sprite grossit et reste en dessous du 2e sprite malgré que son z soit superieur à celui du 2e.
Voila le code:
La classe Color est la couleur du sprite.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 glBindTexture(GL_TEXTURE_2D,Id); glEnable(GL_BLEND); glDisable(GL_DEPTH_TEST); glBegin(GL_QUADS); glColor4ub(Color.Red,Color.Green,Color.Blue,Color.Alpha);glTexCoord2i(0,1);glVertex3f(Position.x,Position.y,Position.z); glTexCoord2i(1,1);glVertex3f(Position.x+Size.x,Position.y,Position.z); glTexCoord2i(1,0);glVertex3f(Position.x+Size.x,Position.y-Size.y,Position.z); glTexCoord2i(0,0);glVertex3f(Position.x,Position.y-Size.y,Position.z); glEnd(); glDisable(GL_BLEND); glEnable(GL_DEPTH_TEST);
La classe Position est sa position et la Classe Size la taille de l'image mais ca on s'en fou!!!
J'apelle donc cette fonction 2 fois avec 2 textures differentes pour afficher mes sprites. Est ce parce que je desactive le depth test? J'ai besoin de le faire pour pouvoir appliquer de la trasparence sur mes sprites.
Merci
Partager