luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 11 févr. 2008 à 19:14
Tu peux pas directement. Solutions:
1) Tu rempaces tous les pixels roses de la texture par un pixel transparent.
2) Tu créés un fragment program qui fait le tri.
spiky31
Messages postés106Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention11 février 2008 11 févr. 2008 à 23:25
Salut
Il semble luhtor t'a donné les bonnes solutions et je crains qu'il n'y en ai pas d'autre.
La ligne de code qui réalise la couleur rose transparente n'existe pas, il va falloir faire avec.
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 11 févr. 2008 à 23:35
Oui je te donnerais pas la solution parce que:
Primo : j'ai autre chose à foutre.
Secondo : Transformer un pixel rose en un pixel transparent. Excuse moi, mais c'est bidon. Il ne m'est meme pas venu a l'esprit que ton pb venait de ca...
Solution:
tu lis tous les pixels de la texture, des que tu trouves (191, 123, 199, 255) tu remplaces par (191, 123, 199, 0).
Et enleves ca de ton code: glBlendFunc(GL_SRC_ALPHA ,GL_ONE); Le fragment arrivant doit avoir l'alpha spécifié dans la texture (d'ou le GL_SRC_ALPHA) et l'alpha du fragment existant deja dans le framebuffer, doit avoir le complémentaire (d'ou le GL_ONE_MINUS_SRC_ALPHA).
Donc si ca répond pas à la question, soit elle est pas clair et je comprend rien et dans ce cas, il faudra que tu prennes le temps de poster une screen sur imagehosting.