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 ^^)

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;
}
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.

Merci d'avance de votre aide.