Transparence couleur... [Résolu]

Signaler
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007
-
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007
-
Bonjour,


j'aimerai dessiner des cubes dont les faces sont colorié d'une couleur uni. (exemple rouge)

et le dessiner mais avec une transparence pour voir par exmeple si j'ai
dessiner un cube plus petit a l interieur, tout en voyant un peut le
gros, par exemple avec un alpha de 0.3f

Seulement ca ne marche pas, je fais pourtant dans mon InitGL

glEnable(GL_ALPHA_TEST);

glAlphaFunc(GL_ALWAYS,0.0);


et avant de dessiner mes cubes de defini la courleur ainsi

glColor4f(r,g,b,a); alpha prenant donc une valeur entre 0 et 1


Qu'est ce qu'il me manque pour que ca marche?


Merci

10 réponses

Messages postés
212
Date d'inscription
dimanche 3 avril 2005
Statut
Membre
Dernière intervention
28 mai 2011
2
lol c'est simple quand tu fais le tracage il faut obligatoirement
tracer tout ce qui est opaque en premier et puis les objets
transparents.

Si non quand tu affiche un objet transparent avant l'objet opaque et
que ce dernier est derier l'objet transparent ces pixels sont rejetés
par l'algorithme de Z-Buffer.

<hr size="2" width="100%" />3Dmania
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
glAlphaFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007

ca marche toujour pas!
Messages postés
212
Date d'inscription
dimanche 3 avril 2005
Statut
Membre
Dernière intervention
28 mai 2011
2
je croix qu'il faux ajouter


glEnable(GL_BLEND)
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007

non plus! C'est bizarre!

Je dois ajouter glBlendFunc() aussi avec certain parametre?
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
Mais mdr chui con, c'est la fonction glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);


la fonction glAlphaFunc n'a rien a voir.
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007

Yes Genial, mais encore un details, en fait ca passe de la couleur bleue (par exemple) a la couleur noir!

Pourquoi? Comment faire pour qu'a une opacité alpha de 0.0 ce soit invisible?

Merci beaucoup pour ton aide!
Messages postés
2023
Date d'inscription
mardi 24 septembre 2002
Statut
Membre
Dernière intervention
28 juillet 2008
5
une opacité de 0.0 c'est comme si c'était insivible ... je vois pas de quoi tu parles.
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007

bah en fait c'est assez bizarre!

ca se met pas vraiment en invisible, mais de la meme couleur que mon fond mon fond!

J'ai en fait plusieurs objets et des scroll bar pour regler l opacité de chaque objets.

Si je reduit jusqua 0.0 l'opacité d'un de met objets, sa couleur change en allant vers cette du background.

et si je tourne autour de mes objets avec ma souris, je ne vois pas
vraiment a travers de l'objets qui est en opacité 0.0! Je vois un des
autres objets au travers, mais d autres objets que je suis sensé voir
au travers sont cachés!

Un details peut etre plus concret, j'ai une grille dessiné sur le plan
(z,x) et bah je ne le voit pas si je regarde au travers de mon cube
d'opacité 0.0, c'est comme si il y avait un cube plein de la couleur de
mon fond!


Mon probleme est assez clairement expliqué? Parcke c'est un peu bizarre a expliquer sans dessin!
Messages postés
136
Date d'inscription
samedi 1 mai 2004
Statut
Membre
Dernière intervention
26 mai 2007

Genial, merci beaucoup pour ton aide!