Eclairage et matériaux 
réalistes : 
 
Dans tous les programmes que 
nous avons écrits jusqu'à présent, nous nous sommes contentés 
d'affecter à chacun des sommets de nos polygones une couleur fixe. Aucun 
algorithme de gestion de l'illumination n'a été mis en uvre. 
Un sommet dont la couleur est définie comme rouge apparaît toujours 
à l'écran avec le même rouge, quelque soit le point de vue 
depuis lequel on l'observe. Dans la réalité, un point de couleur 
rouge apparaîtra différemment suivant l'éclairage auquel il 
est soumis et l'angle sous lequel vous l'observez. OpenGL permet d'effectuer un 
rendu prenant en compte l'illumination des objets. Pour simuler de manière 
réaliste une scène tridimensionnelle il est nécessaire de 
reproduire les lois physiques qui régissent la lumière. Ces lois 
sont complexes, et il est impossible de les reproduire exactement. On se contente 
donc de choisir un modèle mathématique aussi proche que possible 
de la réalité. En fonction de l'application à laquelle il 
est destiné, le modèle d'illumination choisi permettra d'obtenir 
des résultats plus ou moins réalistes et rapides. Le modèle 
utilisé par le moteur de rendu de Blender donne des résultats beaucoup 
plus réalistes que celui d'OpenGL. En revanche, le rendu d'une scène 
OpenGL est bien plus rapide.  
Pour étudier le 
  modèle d'illumination utilisé par OpenGL, il nous faut aborder 
  3 points :
- Les sources lumineuses 
  : quels sont les paramètres permettant de définir une source de 
  lumière ?
  - Les matériaux : Une brique ne réfléchit pas la 
  lumière de la même manière qu'une plaque d'aluminium : le 
  matériau est un facteur primordial pour l'éclairage d'une scène.
  - L'algorithme de remplissage : calculer l'éclairage en chaque 
  pixel de l'image est trop coûteux en temps. OpenGL utilise une astuce 
  pour accélérer le rendu.