9.2.3 Les variables globales

Autant le dire tout de suite, les variables que vous passez à votre programme sont des variables globales. Il existe deux grands type de variables globales, les entrées et les sorties :

  • in : est une entrée, on les définit avec la fonction glVertexAttribPointer
  • uniform : est une entrées (détaillée dans le prochain point)
  • out : est une sortie, là le shaders se débrouille

Heu comment on s'en sert ?

Comme ceci :

1
2
3
4
5
6
in vec3 in_positions;  //sera une entrée d'un tableau de vertices
uniform sampler2D texture;    //sera une texture
uniform mat4 projection;     //sera la matrice de projection
uniform mat4 modelview;      //sera la matrice model view

out vec4 out_Color;  //sera une sortie de couleur

Vous l'avez devinez, nous allons passer tout ce qu'il faut à notre shader pour qu'il puisse faire un bon rendu.