GNT sans publicité, site mobile, fonctionnalitées exclusives...

alphablend ( alpha bizarre sur certaines images )

Le
patate
Bonjour

J'utilise alphablend dans mon project actuel.
Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32
bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ).
D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha
dans l'image.
Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec
la fonction alphablend ?

merci
pat.
Lire les 3 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Christian ASTOR
Le #9772941
patate wrote:


J'utilise alphablend dans mon project actuel.
Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32
bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ).
D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha
dans l'image.
Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec
la fonction alphablend ?



Tu es allé voir chez F.Yuan ?
http://www.fengyuan.com/article/alphablend.html
Christian ASTOR
Le #9772931
patate wrote:

J'utilise alphablend dans mon project actuel.
Quand je charge un TGA tout va bien. Quand je charge la meme image en png 32
bits, l'image a des problemes d'alpha ( forme translucide sur les cotés ).
D'apres ce que j'ai lu sur le msdn cela depend de comment est stocké l'alpha
dans l'image.
Quelqu'un sait il comment convertir un alpha de png en alpha compatible avec
la fonction alphablend ?



Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex)
, AlphaBlend() marche très bien ensuite.
patate
Le #9772921
>
Si je convertis le png en bmp (avec SHConvertGraphicsFile() par ex)
, AlphaBlend() marche très bien ensuite.



Merci je ne connaissai pas cette fonction. Tres utile.

Au final j'ai fait comme ceci ( juste apres le chargement )
pour chaque pixel
r =( r*alpha)/255
g =(g*alpha)/255
b =(b*alpha)/255

l'alpha etant a 0 sur les zones blanches, ca les a repassées en "noir
transparent". Buffer que je place dans un nouveau hbitmap 32 bits.

pat.
Publicité
Suivre les réponses
Poster une réponse
Anonyme