10.4 Attacher les shaders à son programme GPU

Attacher les shaders à son programme GPU est quelque chose d'assez facile à faire, nous utilisons pour cela la fonction :

1
void glAttachShader(GLuint program, GLuint shader);

Où :

  • program : est l'identifiant du programme GPU
  • shader : est l'identifiant du shader que l'on veut attacher au programme

Ce qui veut dire que pour l'instant, une initialisation de programme GPU ressemble à ça :

1
2
3
4
5
6
7
GLuint programTest = glCreateProgram();
GLuint fragmentShader = loadShader(GL_FRAGMENT_SHADER, "../Shaders/couleurs.frag");
GLuint vertexShader = loadShader(GL_VERTEX_SHADER, "../Shaders/couleurs.vert");

//on attache les shaders au programme
glAttachShader(programTest, fragmentShader);
glAttachShader(programTest, vertexShader);

Bien sur, ce n'est pas encore fini, maintenant il faut lier son programme avec les shaders que l'on a attaché.