Bonjour,
J'essaie de faire un fragment shader pour calculer la moyenne des niveaux de gris de mon image (image de type niveau de gris bien sur ^^)
le problème est que je n'ai pas trouvé comment récupérer ma variable "somme" à la fin de l'exécution (et je me demande si c'est faisable. A ce que j'ai lu, varying sert à passer une variable d'un vertex shader à un fragment shader mais pas à ressortir une variable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 //Fragment Shader uniform sampler2D texture; varying float somme; void main(void) { float nx, ny; nx = gl_TexCoord[0].x; ny = gl_TexCoord[0].y; somme += texture2D(texture,vec2(nx, ny)).r; // vu que l'on est en niveau de gris les 3 composantes ont la mm valeur gl_FragColor = gl_Color; }
Merci d'avance de votre aide.
Partager