31
Graphique / Re : [SFML 2.0] Transparence localisée sur un sprite
« le: Juillet 17, 2012, 02:32:20 pm »
Je peine à comprendre le langage GLSL, j'ai fait le tour du web, et les tutos n'abordent absolument pas (du moins explicitement) ce que je veux, et les exemples sont d'une rareté ...
Par exemple, j'ai ce code, qui rend l'image en noir et blanc:
uniform sampler2D texture;
void main()
{
//C'est cette ligne qui m'intrigue
vec4 texel = texture2D(texture, gl_TexCoord[0].st);
//Peut être celle-ci aussi
vec4 pixel = texel * gl_Color;
float gray = pixel.r * 0.39 + pixel.g * 0.50 + pixel.b * 0.11;
gl_FragColor = vec4(gray ,gray ,gray ,pixel.a);
}
Comment faire dès lors, pour sélectionner qu'une partie de la texture, genre un carré, pour lui faire subir l'effet ?
Par exemple, j'ai ce code, qui rend l'image en noir et blanc:
uniform sampler2D texture;
void main()
{
//C'est cette ligne qui m'intrigue
vec4 texel = texture2D(texture, gl_TexCoord[0].st);
//Peut être celle-ci aussi
vec4 pixel = texel * gl_Color;
float gray = pixel.r * 0.39 + pixel.g * 0.50 + pixel.b * 0.11;
gl_FragColor = vec4(gray ,gray ,gray ,pixel.a);
}
Comment faire dès lors, pour sélectionner qu'une partie de la texture, genre un carré, pour lui faire subir l'effet ?