Transparence avec glBlend

Signaler
Messages postés
25
Date d'inscription
dimanche 26 octobre 2003
Statut
Membre
Dernière intervention
13 septembre 2005
-
Messages postés
29
Date d'inscription
lundi 5 septembre 2005
Statut
Membre
Dernière intervention
23 novembre 2005
-
Bonjour,



A l'aide d'un tutorial j'ai crée une classe qui affiche du texte sous
opengl a partir d'une texture bmp listant tous les caracteres.



Dans ce tutorial pour n'afficher que les caracteres et non la couleur
de fond de la texture , on utilise la transparence sous opengl :
glEnable(GL_BLEND) dont le principal interet est de faire apparaitre le
degradé autour des caracteres ( le rendu est assez joli). J'avais deja
essayé de faire la meme chose avec une texture TGA mais ca rend pas
aussi bien.



Mon probleme , le blending opengl rend la couleur Noire 0,0,0
transparente, or dans 80% des cas, on voudrais ecrire du texte en noir
... donc pas possible



Je voudrais savoir si il est possible de definir la couleur qui sera
rendu transparente, par exemple avec la fonction glBlendFunc (...).
J'ai essayé de comprendre comment elle fonctionne mais je n'arrive a
rien.



merci de votre aide !

Smoove

1 réponse

Messages postés
29
Date d'inscription
lundi 5 septembre 2005
Statut
Membre
Dernière intervention
23 novembre 2005

Je suis un peu rouille en OpenGL (il faut que je m'y remette) mais il me semble que glBlendFunc(...) te permet de definir la function que tu veux utiliser pour le blend:

glBlendFunc(myBlendFunc);

(...)

int myBlendFunc(...)
{
}

Encore une fois, je n'ai pas verifie et je ne suis pas convaincu mais je penses que tu dois definir ta fonction de blend....

en esperant que cela t'aide